程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net 數據訪問層 存儲過程分頁語句

asp.net 數據訪問層 存儲過程分頁語句

編輯:ASP.NET基礎
所以最好在數據訪層分頁,如果這樣就要使用存儲過程來分頁.以下是以pubs 數據庫中的employee表為例來進行數據分頁的存儲過程,你可以參考它根據實際情況來創建自己的存儲過程.

注:@pageindex 數據頁的索引,@dataperpage 每頁的記錄數目,@howmanyrecords 用來獲取總的記錄數.
復制代碼 代碼如下:
create proc getdata @pageindex int,@dataperpage int,@howmanyrecords int output
as
declare @temptable table
(
rowindex int,
emp_id char(9),
fname varchar(20),
minit char(1),
lname varchar(30)
)
insert into @temptable
select row_number() over(order by emp_id) as rowindex,emp_id,fname,minit,lname
from employee
select @howmanyrecords=count(rowindex) from @temptable
select * from @temptable
where rowindex>(@pageindex-1)*@dataperpage
and rowindex<=@pageindex*@dataperpage

declare @howmanyrecords int
exec getdata 2,5,@howmanyrecords output
select @howmanyrecords
declare @x int, @y int, @z int
select @x = 1, @y = 2, @z=3
select @x,@y,@z

create proc getdata2 @pageindex int,@dataperpage int,@howmanyrecords int output
as
declare @temptable table
(
rowindex int,
emp_id char(9),
fname varchar(20),
minit char(1),
lname varchar(30)
)
insert into @temptable
select row_number() over(order by emp_id) as rowindex,emp_id,fname,minit,lname
from employee
select @howmanyrecords=count(rowindex) from @temptable
select * from @temptable
where rowindex>(@pageindex-1)*@dataperpage
and rowindex<=@pageindex*@dataperpage

其中Row_number 函數可以給檢索來的每條記錄按照排序來編號.

接下來你就可以在asp.net 網頁後台代碼中調用該存儲過程,就可以獲取想要的數據.
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved