ylbtech-databasedesgin:ylbtech-proc-儲存過程分頁
1.a,資料庫關係圖(database diagram)返回頂部
1.b,資料庫設計指令碼(database design script)返回頂部
useview code[test]go
/****** object: storedprocedure [dbo].[proccommonpaging] script date: 03/22/2012 13:34:59 *****
*/set ansi_nulls on
goset quoted_identifier on
go/*
功能:帶分頁的儲存過程,只支援單錶
* 姓名:
* 日期:
*/create
procedure
[dbo
].[proccommonpaging
]@pagesize
int, --
顯示的大小
@pageindex
int,--
傳入的頁碼
@keyfiled
varchar(50),--
主鍵字段
@tablename
varchar(150),--
表名@condition
varchar(500),--
查詢條件
@sort
varchar(150),--
排序@rowcount
int output,--
查詢的總記錄數
@pagecount
int output --
獲得總頁碼
as--
查詢的總記錄數
declare
@sql
nvarchar(4000)--
要執行的sql
declare
@expellent
int--
要排除的記錄數
begin
--獲取總記錄數
set@sql='
select @rowcount = count(*) from '+
@tablename+'
'+@condition
exec sp_executesql @sql,n'
@rowcount int output
',@rowcount output--
計算總記錄數
set@pagecount
=ceiling((@rowcount
*1.0)/
@pagesize)--
計算總頁數
if@pageindex=1
begin
set@sql='
select top '+
str(@pagesize)+
'* from '+
@tablename+'
'+@condition+'
'+@sort
endbegin
if@condition='
'begin
set@expellent
=@pagesize
*(@pageindex
-1) --
計算要排除的記錄數
set@sql='
select top '+
str(@pagesize)+
'* from '+
@tablename+'
where '+
@keyfiled+'
not in(select top '+
str(@expellent)+''
+@keyfiled+'
from '+
@tablename+'
'+@sort+'
) '+@sort
endelse
begin
set@expellent
=@pagesize
*(@pageindex
-1)--
計算要排除的記錄數
set@sql='
select top '+
str(@pagesize)+
'* from '+
@tablename+'
'+@condition+'
and '+
@keyfiled+'
not in(select top '+
str(@expellent)+''
+@keyfiled+'
from '+
@tablename+'
'+@condition+'
'+@sort+'
) '+@sort
endend
exec(@sql)
endgo
1.c,功能實現**(function implementation code)返回頂部
出處:
分頁儲存過程 分頁儲存過程
分頁儲存過程 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...