分頁儲存過程

2022-04-25 00:56:13 字數 1960 閱讀 6291

大神都是從菜鳥開始的,所以菜鳥的學習很重要!

自己寫的乙個很好用很實際的例子,可以直接使用

1.建立sql的儲存過程

create procedure page

@ipage int=1, --當前頁碼

@ipagesize int=10,--每頁條數

@strtable varchar(4000),--查詢的表

@strtext varchar(1000),--查詢的字段

@strwhere varchar(1000),--條件

@strindex varchar(30),--索引

@strorder varchar(100),--排序字段

@strtotals int output --返回總條數

as--定義變數

declare @sqlcount nvarchar(4000)

declare @sql nvarchar(4000)

declare @temporder nvarchar(4000)

if @strorder<>''

begin

set @temporder='  order by '+@strorder

endelse

begin

set @temporder=''

end--組合sql語句

if @ipage=1

begin

set @sql='select top '+str(@ipagesize)+' '+@strtext+' from '+@strtable+'  where 1=1 '+@strwhere+@temporder

endelse

begin

set @sql='select top '+str(@ipagesize)+' '+@strtext+' from '+@strtable+' where '+@strindex+' not in (select top '+str(@ipagesize*(@ipage-1))+' '+@strindex+' from '+@strtable+' where 1=1 '+@strwhere+@temporder+') '+@strwhere+@temporder

endset   @sqlcount='select   @strtotals=isnull(count(*),10000)   from '+@strtable+'  where 1=1 '+@strwhere

--查詢總記錄數量

exec   sp_executesql   @sqlcount,n'@strtotals  int   output',@strtotals   output

--執行sql語句返回

exec (@sql)

2.訪問層呼叫

public static datatable getlist(int pagesize, int currentpage, string strwhere, out int record, string biao, string strdesc,string zd ,string zkey)

;prams[0].value = biao;

prams[1].value = zkey;// "id";

prams[2].value = zd;//"*";

prams[3].value = pagesize;

prams[4].value = currentpage;

prams[5].value = strwhere;

prams[6].value = strdesc;

prams[7].direction = parameterdirection.output;

dt = dba.executedatatable("page", prams, commandtype.storedprocedure);

record = convert.toint32(prams[7].value);

return dt;

分頁儲存過程 分頁儲存過程

分頁儲存過程 alter proc dbo p pageshow pagesize int,每頁大小 currentpage int out,當前頁 housename nvarchar 50 房產名稱 totalcount int out,總記錄數 totalpage int out 總頁數 as...

分頁儲存過程

create proc p sobigo percentpage tblname varchar 255 t category 表名 strgetfields varchar 1000 需要返回的列 fldname varchar 255 排序的欄位名 pagesize int 10,頁尺寸 pag...

分頁儲存過程

create procedure pro select pageindex int,pagesize int as select student.sno,student.sname,student.s grade.math,grade.physics,grade.huaxue,grade.chine...