create procedure pro_select
@pageindex int,
@pagesize int
as/*
select student.sno,student.sname,student.s*** ,grade.math,grade.physics,grade.huaxue,grade.chinese,grade.english
from student,grade
where student.sno=grade.sno
*/declare @numresults int
select @numresults = count(student.sno)
from student,grade
where student.sno=grade.sno
if (@pageindex >= 0 and @pageindex < ((@numresults/@pagesize) +1))
begin
declare @pagelowerbound int --查詢記錄開始處
declare @pageupperbound int --查詢記錄結束處
declare @rowstoreturn int --返回的實際記錄數
-- first set the rowcount
-- 設定返回的實際記錄數
set @rowstoreturn = @pagesize * (@pageindex + 1)
set rowcount @rowstoreturn
-- set the page bounds
-- 設定查尋範圍
set @pagelowerbound = @pagesize * @pageindex
set @pageupperbound = @pagelowerbound + @pagesize + 1
-- create a temp table to store the select results
-- 建立臨時表存放查詢結果
create table #pageindex
(indexid int identity (1, 1) not null,
id bigint --查詢表的主鍵(可更改1)
)-- insert into the temp table
-- 向臨時表存放查詢表的所有主鍵
insert into #pageindex (id)
select
student.sno --(可更改2)
from --(可更改3)
student,grade
where student.sno=grade.sno
select a.sno,a.sname,a.s*** ,b.math,b.physics,b.huaxue,b.chinese,b.english
from student a,grade b,#pageindex pageindex
where
a.sno=b.sno and
a.sno = pageindex.id and --(可更改8)
pageindex.indexid > @pagelowerbound and
pageindex.indexid < @pageupperbound
drop table #pageindex
endgo
分頁儲存過程 分頁儲存過程
分頁儲存過程 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...
分頁 儲存過程
方法一 任何條件的sql語句 create procedure xiaozhengge sqlstr nvarchar 4000 查詢字串 currentpage int,第n頁 pagesize int 每頁行數 asset nocount on declare p1 int,p1是游標的id r...