快速业务通道

ASP.NET数据列表控件的分页总结(二)使用存储过程分页

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-19

当数据库的数据量比较大,对执行效率要求比较高的时候,我们可以考虑使用存储过程来实现分页,根据传入的页数返回需要显示的数据表,仅仅select出当前页的数据。(这个比使用PagedDataSource类而言效率要高。)

现在采用Repeater来实现一个数据分页,数据库采用SQL server2000,利用里面的系统表Northwind。

新建存储过程如下:

create PROCEDURE dbo.myPaging
(
@pagesize int,
@currentPage int,
@total int output
)
AS
create table #temp
(
 ID int identity(1,1),
 CustomerID varchar(50),
 CompanyName varchar(50),
 ContactName varchar(50),
 ContactTitle varchar(50),
 Phone varchar(50)
)
insert into #temp(CustomerID,CompanyName,ContactName,ContactTitle,Phone)
select CustomerID,CompanyName,ContactName,ContactTitle,Phone
from Customers
select @total=(select count(*) from Customers)
declare @startID int
declare @endID int
set @startID=(@currentpage-1)*@pagesize+1
set @endID=@currentpage*@pagesize
select * from #temp where ID>=@startID and ID<=@endID
GO

若不会写存储过程的话,可以参照网站在线生成分页的存储过程:http://www.webdiyer.com/AspNetPager/utility/sqlspgen.aspx

念岬旗鷹?

1<body>
2    <form id="Form1" method="post" runat="server">
3      <FONT face="卜悶">
4        <asp:DataList id="DataList1" runat="server" Width="744px" DataKeyField="customerID">
5          <HeaderTemplate>
6            <TABLE id="Table2" cellSpacing="1" cellPadding="0" width="100%" bgColor="#990033" border="0">
7              <TR>
8                <TD bgColor="#ffffff">巷望兆各</TD>
9                <TD bgColor="#ffffff">選狼繁兆忖</TD>
10                <TD bgColor="#ffffff">選狼炎籾</TD>
11                <TD bgColor="#ffffff">選狼窮三</TD>
12              </TR>
13            </TABLE>
14          </HeaderTemplate>
15          <ItemTemplate>
16            <TABLE id="Table1" cellSpacing="1" cellPadding="0" width="100%" bgColor="#990033" border="0">
17              <TR>
18                <TD bgColor="#ffffff">
19                  <asp:Label id="Label1" runat="server" Width="40%">
20                    <%# DataBinder.Eval(Container.DataItem,"CompanyName")%>
21                  </asp:Label></TD>
22                <TD bgColor="#ffffff">
23                  <asp:Label id="Label2" runat="server" Width="20%">
24     

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号