關於通用資料庫的表的分頁功能

2021-09-30 04:32:09 字數 1446 閱讀 7431

if object_id('proc_selectstuandpagging') is not null

drop proc proc_selectstuandpagging

gocreate proc proc_selectstuandpagging

@tbl nvarchar(10),--表名

@orderword nvarchar(20),--排序

@fields nvarchar(100),--欄位

@wherecondition nvarchar(200),--查詢條件

@pagesize int,--每頁記錄條數

@pagenum int,--當前頁碼

@totalcount nvarchar(20) output--滿足查詢條件的總記錄條數

asdeclare @sqlresult nvarchar(700),@sqlcount nvarchar(700),@sql nvarchar(350)

--綜合拼接查詢字串

set @sqlcount='select @rowscount=count(*) '

set @sqlresult='select * '

set @sql=' from(select row_number() over(order by '+ @orderword +') as rownum,'+ @fields +' from  '+ @tbl +' where 1=1'

if @wherecondition<>''

set @sql=@sql+@wherecondition

set @sql=@sql+')a'

--查詢記錄數的sql語句

set @sqlcount= @sqlcount+@sql 

set @sql=@sql+' where rownum between '+str((@pagenum-1)*@pagesize+1)+' and '+str(@pagesize*@pagenum)

--查詢滿足條件的當前頁資料

set @sqlresult=@sqlresult+@sql

declare @rowscount int,@finalsql nvarchar(max)

declare @paras nvarchar(100)

set @paras ='@rowscount as int output'

set @finalsql=@sqlresult+@sqlcount

exec sp_executesql @finalsql,@paras,@rowscount=@totalcount output 

go----測試語句

declare @count int

exec proc_pager 'admin','adminid asc','*','',1,5,@count output

print '總條數:'+str(@count)

go

資料庫繫結分頁功能

建立指令碼 分頁繫結 protected void page load object sender,eventargs e 分頁繫結資料 publicdata f new publicdata protected void refreshdatagrid catch exception protec...

關於 sql server 資料庫的分頁查詢

sql server 2005 之前的版本 不包括2005 上 每頁條數 int pagesize json.pagesize.toint 第幾頁 int index json.index.toint 獲取總條數和總頁數 string str select count as count from t...

公司學習 通用資料庫儲存過程分頁

create procedure dbo username pageindex int,pagesize int as declare min int declare max int set min pagesize pageindex 1 1 set max pagesize pageindex ...