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 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于ASP.NET数据列表控件的分页总结(二)使用存储过程分页的所有评论