vb.net数据库分页 数据库实现分页功能

vb.net listview 分页

用pageDataSource类

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、网页空间、营销软件、网站建设、深州网站维护、网站推广。

与DataSource用法差不多

由于DataList本身没有带分页功能,pageDateSource祢补了这个不足,你可以当作DateSource来使用,没有太大区别

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using System.Text.RegularExpressions;

public partial class _Default : System.Web.UI.Page

{

SqlHelper MySqlHelper = new SqlHelper(); // 我写的数据库操作方法集,创建一个实例

Operation MyOperation = new Operation(); // 我写的网站通用处理方法集,创建一个实例

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

GbookData();

lb_count.Text = MySqlHelper.MyScalar("SELECT COUNT(*) FROM BBS WHERE BBS_IsDisplay = '1'"); // 记录条数

}

}

protected void GbookData() // 分页程序代码

{

string strURL = Request.RawUrl;

int intPage = 1;

PagedDataSource MyPager = new PagedDataSource();

MyPager.DataSource = MySqlHelper.MyDS("SELECT * FROM BBS WHERE BBS_IsDisplay = '1' ORDER BY BBS_ID DESC").Tables["MyTable"].DefaultView;

MyPager.PageSize = 9;

MyPager.AllowPaging = true;

hpl_first.Enabled = true;

hpl_up.Enabled = true;

hpl_down.Enabled = true;

hpl_end.Enabled = true;

if (strURL.Contains("/Page/"))

{

string strPage = strURL.Substring(strURL.LastIndexOf("/Page/") + 6);

if (strURL.Substring(strURL.LastIndexOf("/")) == "/")

{

Response.Redirect("NoAccess.htm");

}

if (Regex.IsMatch(strPage, "\\d"))

{

int thisPage;

try

{

thisPage = Convert.ToInt32(strURL.Substring(strURL.LastIndexOf("/Page/") + 6));

if (thisPage 1 || thisPage MyPager.PageCount)

{

Response.Redirect("NoAccess.htm");

}

else

{

intPage = thisPage;

}

}

catch

{

Response.Redirect("NoAccess.htm");

}

}

else

{

Response.Redirect("NoAccess.htm");

}

}

hpl_first.NavigateUrl = "~/GuestBook/Page/1";

hpl_up.NavigateUrl = "~/GuestBook/Page/" + (intPage - 1).ToString();

hpl_down.NavigateUrl = "~/GuestBook/Page/" + (intPage + 1).ToString();

hpl_end.NavigateUrl = "~/GuestBook/Page/" + MyPager.PageCount;

MyPager.CurrentPageIndex = intPage - 1;

Repeater_1.DataSource = MyPager;

Repeater_1.DataBind();

if (MyPager.IsFirstPage)

{

hpl_first.Enabled = false;

hpl_up.Enabled = false;

}

if (MyPager.IsLastPage)

{

hpl_down.Enabled = false;

hpl_end.Enabled = false;

}

lb_thispage.Text = intPage.ToString(); // 当前页码

lb_totalpage.Text = MyPager.PageCount.ToString(); // 总页数

}

}

请问vb.net怎么查询出ACCESS数据库的记录并能分页显示?

当然能,把你不分页的程序贴出来,我给你修改嘛。

主要就是利用rs.PageSize等实现,在你程序的下面语句:

rs.open sqlc,conn,1,1

之后,添加下面的代码可以控制显示的记录范围:

rs.PageSize = 10 'pagesize属性指定了每页要显示的记录条数

rs.AbsolutePage = Page '把页码赋给absolutepage属性从而知当前页的首条记录号

上的PAGE是调用是带过来的参数,没有参数时指定为1,表示显示第一页。

vb.net的 分页处理

两个方案,一,是通过控件来控制分页,就是先将数据全部读到缓存中,然后利用控件的每页显示数量以及下一页,上一页的跳转按钮控制。二,是利用数据库中的存储过程来实现,在存储过程中已经写好分页代码,每次读取的时候都只读取一定数量的信息!!


当前文章:vb.net数据库分页 数据库实现分页功能
分享网址:http://myzitong.com/article/dodiiig.html