簡單的儲存過程分頁
呼叫
exec dbo.gc_IP 'id=10',2,1
USE [Studentnew]
GO/****** Object: StoredProcedure [dbo].[gc_IP] Script Date: 05/04/2012 16:30:06 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--儲存過程分頁
ALTER PROCEDURE [dbo].[gc_IP]
@strWhere varchar(1500) , -- 查詢條件 (注意: 不要加 where)
@PageSize int , -- 頁尺寸
@PageIndex int -- 頁碼
AS BEGIN
declare @strSQL varchar(5000) -- 主語句
declare @strTmp varchar(110) -- 臨時變數
declare @strOrder varchar(400) --排序型別
set @strTmp = '<(select min'
set @strOrder = ' order by id desc'
if @PageIndex <= 1
begin
set @PageIndex=1
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' * from a where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' * from a '+ @strOrder
--如果是第一頁就執行以上程式碼,這樣會加快執行速度
end
else
begin
--以下程式碼賦予了@strSQL以真正執行的SQL程式碼
set @strSQL = 'select top ' + str(@PageSize) +' * from a
where id' + @strTmp + '(id) from (select top ' + str((@PageIndex-1)*@PageSize) + ' id from a' + @strOrder + ') as tblTmp)'+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' * from a
where id' + @strTmp + '(id) from
(select top ' + str((@PageIndex-1)*@PageSize) + ' id from a where ' + @strWhere + ' '
+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder
end
--print (@strSQL)
exec (@strSQL)
END
相關文章
- 簡單的分頁儲存過程儲存過程
- 分頁儲存過程儲存過程
- SQL 分頁儲存過程SQL儲存過程
- 通用分頁儲存過程儲存過程
- sql儲存過程分頁SQL儲存過程
- 簡單談基於SQL SERVER 分頁儲存過程的演進SQLServer儲存過程
- (SQL Server)分頁的儲存過程SQLServer儲存過程
- SqlServer-儲存過程分頁SQLServer儲存過程
- Sql儲存過程分頁--臨時表儲存SQL儲存過程
- 基於ROWCOUNT的分頁儲存過程儲存過程
- 簡單的造數儲存過程儲存過程
- oracle儲存過程分頁程式碼Oracle儲存過程
- 兩種SQL分頁方法儲存過程和遊標儲存過程SQL儲存過程
- sqlserver儲存過程實現多表分頁SQLServer儲存過程
- 分頁控制元件及儲存過程控制元件儲存過程
- [MSSQL]mssql海量高效分頁儲存過程SQL儲存過程
- ORACLE高效分頁儲存過程程式碼Oracle儲存過程
- mysql 儲存過程簡單例項MySql儲存過程單例
- mysql儲存過程簡單例項MySql儲存過程單例
- SQL Server 儲存過程的經典分頁(轉)SQLServer儲存過程
- 學習一個簡單的儲存過程儲存過程
- 使用儲存過程實現分頁列印 (轉)儲存過程
- SQLServer 2005通用分頁儲存過程SQLServer儲存過程
- 拋磚引玉——通用分頁儲存過程儲存過程
- SQL SERVER 2005分頁儲存過程SQLServer儲存過程
- 完整的分頁儲存過程以及c#呼叫方法儲存過程C#
- 一個比較不錯的儲存過程分頁儲存過程
- 儲存過程分頁 Ado.Net分頁 EF分頁 滿足90%以上儲存過程
- asp.net利用儲存過程分頁程式碼ASP.NET儲存過程
- SQL Server 2000 的分頁查詢(儲存過程)SQLServer儲存過程
- asp.net分頁的SQL語句及儲存過程ASP.NETSQL儲存過程
- 簡單的mysql儲存過程,輸出結果集MySql儲存過程
- [Procedure]Oracle之分頁儲存過程Oracle儲存過程
- 實用單表千萬級分頁儲存過程一(不敢獨享,特此分享)儲存過程
- 實用單表千萬級分頁儲存過程二(不敢獨享,特此分享)儲存過程
- 通用的SQL Server資料庫查詢分頁儲存過程SQLServer資料庫儲存過程
- 支援DISTINCT的通用分頁儲存過程(SQL2005)儲存過程SQL
- asp.net分頁控制元件AspNetPager的使用,使用傳統分頁和儲存過程分頁ASP.NET控制元件儲存過程