社区
数据库(包含打印,安装,报表)
帖子详情
VB怎样才能实现高效分页!
prominent
2006-02-16 08:05:06
由于最近在写一个小的程序,,,
但数据量很大。
估计有10W条,有没有什么好的分页方法呀!
程序是在查询时将Rs绑定到DataGrid控件。
望高手指点一下呀。谢了呀。。。
...全文
195
7
打赏
收藏
VB怎样才能实现高效分页!
由于最近在写一个小的程序,,, 但数据量很大。 估计有10W条,有没有什么好的分页方法呀! 程序是在查询时将Rs绑定到DataGrid控件。 望高手指点一下呀。谢了呀。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lxf_gd
2006-02-21
打赏
举报
回复
如果只是显示,可以采用报表的形式嘛。用快乐报表(www.happyreport.com)就轻松搞定啦!
vbman2003
2006-02-17
打赏
举报
回复
用SQL语句,这样最快:
select top 30 * from tb where id between 101 and 130 order by id
vansoft
2006-02-17
打赏
举报
回复
10萬條每次分頁都要去取出來再顯示,
是不是有點累啊?
可以通過一個數字類型的列和TOP來用SQL語句取第幾條到第幾條。
prominent
2006-02-16
打赏
举报
回复
谢了...
楼上的....
faysky2
2006-02-16
打赏
举报
回复
参考(DataGrid分页):
一个datagrid,一个文本框txtPage,两个按钮cmdPrevious,cmdNext
窗体代码
Option Explicit
Dim conn As ADODB.Connection
Dim lCurrentPage As Long
Private Sub cmdNext_Click()
lCurrentPage = lCurrentPage + 1
Call Loadcontrol(lCurrentPage)
End Sub
Private Sub cmdPrevious_Click()
If lCurrentPage > 1 Then
lCurrentPage = lCurrentPage - 1
Call Loadcontrol(lCurrentPage)
End If
End Sub
Private Sub Form_Load()
Set conn = New ADODB.Connection
conn.CursorLocation = adUseClient
conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test2000.mdb;"
lCurrentPage = 1
Call Loadcontrol(lCurrentPage)
End Sub
Private Sub Loadcontrol(lPage As Long)
On Error Resume Next
Dim adoPrimaryRS As ADODB.Recordset
Dim lPageCount As Long
Dim nPageSize As Integer
Dim lCount As Long
'每页显示的纪录
nPageSize = 10
Set adoPrimaryRS = New ADODB.Recordset
adoPrimaryRS.Open "select * from numbers", conn, adOpenStatic, adLockOptimistic
adoPrimaryRS.PageSize = nPageSize
'页数
lPageCount = adoPrimaryRS.PageCount
If lCurrentPage > lPageCount Then
lCurrentPage = lPageCount
End If
adoPrimaryRS.AbsolutePage = lCurrentPage
'定义另一个记录集
Dim objrs As New ADODB.Recordset
'添加字段名称
For lCount = 0 To adoPrimaryRS.Fields.Count - 1
objrs.Fields.Append adoPrimaryRS.Fields(lCount).Name, adVarChar, adoPrimaryRS.Fields(lCount).DefinedSize
Next
'打开记录集
objrs.Open
'将指定记录数循环添加到objrs中
For lCount = 1 To nPageSize
objrs.AddNew
objrs.Fields("id") = adoPrimaryRS.Fields("id")
objrs.Fields("anumber") = adoPrimaryRS.Fields("anumber")
adoPrimaryRS.MoveNext
Next
'绑定
Set DataGrid1.DataSource = objrs
'在文本框显示页数
txtPage = lPage & "/" & adoPrimaryRS.PageCount
End Sub
Private Sub Form_Unload(Cancel As Integer)
If Not conn Is Nothing Then
conn.Close
End If
Set conn = Nothing
End Sub
'文本框中输入页数,回车跳转到指定位置
Private Sub txtPage_KeyDown(KeyCode As Integer, Shift As Integer)
lCurrentPage = Val(txtPage.Text)
Call Loadcontrol(lCurrentPage)
End Sub
prominent
2006-02-16
打赏
举报
回复
所以就要用到分页的呀...
我是想问问哪一种分页方法比较高效...
否则,查询数据库肯定会死人的...
路过的看一下撒呀..
小弟在此谢过了..在线等...
frankwong
2006-02-16
打赏
举报
回复
一个网格要显示这么多条记录干嘛?
VB
6中使用ADO控件
实现
数据库
分页
显示的完整示例
本文详细介绍在
VB
6中使用ADO控件
实现
数据库
分页
显示的方法,涵盖Connection、Command、Recordset等核心对象的应用,讲解客户端与服务端
分页
机制、数据绑定技巧及性能优化策略,帮助开发者提升大数据量下的应用响应速度和用户体验。
C#与
VB
.NET WinForms
分页
控件实践教程
本文围绕.NET框架下C#和
VB
.NET的WinForms
分页
控件展开。先分析数据展示与
分页
需求,接着阐述控件设计、数据绑定、逻辑
实现
及事件处理,还提及用户界面设计、源码注释、兼容性处理。此外,介绍提升易用性方法、学习资源,最后展望WinForms和
分页
控件的未来发展。
VB
中
实现
高效
的二分查找技术
本文详细介绍了在
VB
中
实现
二分查找算法的方法。首先阐述了二分查找的基础和算法步骤,接着讲解了
VB
语言
实现
该算法的过程,包括代码编写和优化。还介绍了二分查找在数据检索、算法竞赛等场景的应用,以及其变种算法和性能优化技巧,最后分析了时间和空间复杂度。
VB
ListView控件的数据
分页
实现
方法
本文聚焦于Visual Basic开发中ListView控件的数据
分页
功能。先阐述数据
分页
概念、重要性与关键指标,接着介绍数据准备、计算每页行数、编写
分页
逻辑等步骤,还提及ListView动态更新、
分页
控件应用、用户体验优化、错误处理等内容,含示例代码助于掌握
实现
细节。
VB
-LoRA
高效
登顶!仅需0.4%参数量,极限超越LoRA!
随着大模型发展,参数
高效
微调成热门。研梦非凡10月23日晚邀请王导师讲解《
VB
-LoRA:超越LoRA!大模型微调效率巅峰!》直播课,内容涵盖研究背景、知识准备、
VB
-LoRA方法、实验分析、相关工作及代码
实现
,预约可领精选论文。
数据库(包含打印,安装,报表)
1,217
社区成员
55,950
社区内容
发帖
与我相关
我的任务
数据库(包含打印,安装,报表)
VB 数据库(包含打印,安装,报表)
复制链接
扫一扫
分享
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章