好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > MsSql 存儲過程分頁代碼 [收集多篇]

MsSql 存儲過程分頁代碼 [收集多篇]

熱門標簽:湖南電腦外呼系統平臺 菏澤語音電銷機器人加盟公司 知名電銷機器人價格 分享百度地圖標注多個位置 外呼系統改進 長沙智能外呼系統 廣東防封卡外呼系統原理是什么 電銷機器人公司 需要哪些牌照 地圖標注牌
復制代碼 代碼如下:

--使用說明 本代碼適用于MsSql2000,對于其它數據庫也可用.但沒必要
--創建存儲過程
CREATE PROCEDURE pagination
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的字段名(可包含如TABLE.FLDNAME形式)
@PageSize int = 10, -- 頁尺寸
@PageIndex int = 1, -- 頁碼
@doCount bit = 0, -- 返回記錄總數, 非 0 值則返回
@OrderType bit = 0, -- 設置排序類型, 非 0 值則降序
@strWhere varchar(1500) = '' -- 查詢條件 (注意: 不要加 where)
AS
declare @strSQL varchar(5000) -- 主語句
declare @strTmp varchar(110) -- 臨時變量
declare @strOrder varchar(400) -- 排序類型
declare @fldName_t varchar(255) -- 在分頁時用的排序字段名,不包含多表并列時的表名
set @fldName_t = right(@fldName,len(@fldName)-CHARINDEX('.',@fldName))
if @doCount != 0
begin
if @strWhere !=''
set @strSQL = 'select count(*) as Total from ' + @tblName + ' where '+@strWhere
else
set @strSQL = 'select count(*) as Total from ' + @tblName + ''
end
--以上代碼的意思是如果@doCount傳遞過來的不是0,就執行總數統計。以下的所有代碼都是@doCount為0的情況
else
begin
if @OrderType != 0
begin
set @strTmp = '(select min'
set @strOrder = ' order by ' + @fldName +' desc'
--如果@OrderType不是0,就執行降序,這句很重要!
end
else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by ' + @fldName +' asc'
end
if @PageIndex = 1
begin
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ' + @tblName + ' where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from '+ @tblName + ' '+ @strOrder
--如果是第一頁就執行以上代碼,這樣會加快執行速度
end
else
begin
--以下代碼賦予了@strSQL以真正執行的SQL代碼
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from '+ @tblName + ' where ' + @fldName + ' ' + @strTmp + ' ('+ @fldName_t + ') from (select top ' + str((@PageIndex-1)*@PageSize) + ' '+ @fldName + ' from ' + @tblName + '' + @strOrder + ') as tblTmp)'+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from '+ @tblName + ' where ' + @fldName + ' ' + @strTmp + ' ('+ @fldName_t + ') from (select top ' + str((@PageIndex-1)*@PageSize) + ' '+ @fldName + ' from ' + @tblName + ' where ' + @strWhere + ' '+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder
end
end
exec (@strSQL)
go
--測試
create table news --建表
(
n_id int iDENTITY(1,1) primary key,
n_title char(200),
n_content text
)
--寫循環插入1000000條的數據
create proc tt
as
declare @i int
set @i=0
while(@i1000000)
begin
insert into news(n_title,n_content) values('sb','dsfsdfsd')
set @i=@i+1
end
exec tt
exec pagination 'news','*','n_id',1000,2,0,0,''


第二篇

復制代碼 代碼如下:

自己改寫的一個分頁存儲過程
CREATE PROC Paging
(
@pageSize int,
@pageIndex int,
@pageField nvarchar(32),
@countTotal bit=1,
@fieldQuery nvarchar(512),
@tableQuery nvarchar(512),
@whereQuery nvarchar(2048),
@orderQuery nvarchar(512)
)
AS
DECLARE @bdate Datetime
SET @bdate = getdate()
DECLARE @itemcount int
SET @itemcount=@pageIndex*@pageSize
DECLARE @itemlowwer int
SET @itemlowwer=(@pageIndex-1)*@pageSize
DECLARE @cmd nvarchar(3062)

IF @pageIndex=1
SET @cmd ='SELECT TOP ‘+CAST(@pageSize AS NVARCHAR)+' ‘+@fieldQuery+' FROM ‘+@tableQuery+' WHERE ‘+@whereQuery+' ORDER BY ‘+@orderQuery
ELSE
SET @cmd='SELECT ‘+@fieldQuery+' FROM ‘+@tableQuery+' WHERE ‘+@pageField+' IN (SELECT TOP ‘+CAST(@itemcount as nvarchar)+' ‘+@pageField+' FROM ‘+@tableQuery+' WHERE ‘+@whereQuery+' ORDER BY ‘+ @orderQuery+')
AND ‘+@pageField+' NOT IN (SELECT TOP ‘ +CAST(@itemlowwer as nvarchar)+' ‘+@pageField+' FROM ‘+@tableQuery+' WHERE ‘+@whereQuery+' ORDER BY ‘+ @orderQuery+')'
–print @cmd
EXEC(@cmd)

SELECT DATEDIFF( ms , @bdate , getdate() )

IF @countTotal =1
BEGIN
SET @cmd = ‘SELECT COUNT( 0) FROM ‘+@tableQuery+' WHERE ‘+@whereQuery
EXEC(@cmd)
END
GO
您可能感興趣的文章:
  • mssql 高效的分頁存儲過程分享
  • MSSQL MySQL 數據庫分頁(存儲過程)
  • 淺談基于SQL Server分頁存儲過程五種方法及性能比較
  • 五種SQL Server分頁存儲過程的方法及性能比較
  • SQL Server 分頁查詢通用存儲過程(只做分頁查詢用)
  • sqlserver2005利用臨時表和@@RowCount提高分頁查詢存儲過程性能示例分享
  • SQL Server的通用分頁存儲過程 未使用游標,速度更快!
  • sqlserver 存儲過程分頁(按多條件排序)
  • MSSQL分頁存儲過程完整示例(支持多表分頁存儲)

標簽:福建 西寧 美容院 泉州 商洛 呼和浩特 珠海 天水

巨人網絡通訊聲明:本文標題《MsSql 存儲過程分頁代碼 [收集多篇]》,本文關鍵詞  MsSql,存儲,過程,分頁,代碼,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MsSql 存儲過程分頁代碼 [收集多篇]》相關的同類信息!
  • 本頁收集關于MsSql 存儲過程分頁代碼 [收集多篇]的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 亚洲宅男天堂a在线| 草莓视频污在线下载| 国产精品wwww免费下载APP| 欧美偷窥清纯综合图区| 国产精品一区伦免视频播放| 翁与熄的大尺度小说白柔| 日韩女忧| 91视频中文| 国产精品第13页| 美女被扒开内裤桶屁股眼动态图| EEUSS鲁丝一区二区| 国产精品亚洲一区二区三区正片| 欲乱上班族波多野结衣| 精品国产三级国产AⅤ在线观看 | 被绑在床强摁做开腿呻吟H动漫 | 女人18毛片久久| 欧美丝袜videohd| 国产精品人妻熟女毛片A区升C区| 日本一区二区三区不卡| 香港三级聊斋孽欲狐仙| 亚洲狠狠做婷婷一区二区三区伊人| 人乳喂奶电影bd手机在线观看| 亚洲午夜理论片在线播放| 日韩精品在线一区二区| 国产69堂一巨二巨三直在线观看| 午夜DJ在线观看免费完整特色| 女人高潮一级A片免费看视频| 国产99久久九九精品免费| 俄罗斯一级毛片在线播放| 免费剧烈运动扑克视频软件| 伊色综合久久之综合久久 | 欧洲色视频| 毛片无码一区二区三区A片视频| 亲胸吻胸添奶头| 久久综合亚洲一区二区三区| 性饥渴少妇XXXⅩOOOO| 阿别摸了好爽阿| 国产精品免费一区久久网址| 真实国产普通话对白乱子子伦视频| 一级毛片成人免费看免费不卡| 国产美女裸体无遮挡网站|