请教高手,我想做一个小程序,实现如下功能:1、遍历当前运行目录,找出所有.db文件(这些文件里的表结构相同,内容不同),2、我想读取每个.db中的一个叫k_tbl的表,统计k_tbl的记录数。(目前我已实现的:可以完成文件搜索,但是第二步怎么做没有好办法。我用adodc)请高手指教!
解决方案 »
- MSHFlexGrid数据输入??
- 实时错误9:下表越界!!
- “超级绿豆”And“冰儿马甲”请进,也欢迎其他高人参与。(跨进程Hook)
- 求助:我的MSDN为何不能用?
- 如何让程序窗口“永居最下”,用它当作桌面或桌面的一部分
- 这个查询要怎样写??
- 请问如何使mshflexgrid的第i列的对齐方式为靠左,其余列为居中???(在线等)
- 帮忙解释一下GetModuleFileName这个Api函数的参数使用
- 一个非常简单的问题
- 大家好,有熟悉 Crystal Report 7 的吗?很迷惑的地方……
- VB中用什么函数自动打开IE啊?并且要转到某指定的网页地址上去!
- vsprinter上面翻页按钮可以自定义吗?
我的思路是,在找到每一个.db文件时,将adodc的数据来源定义为这个.db,count()取出纪录,到下一个.db文件也是如此处理。
还有更好的方法吗?
我取出记录数是要做进一步处理的。
App.TaskVisible = False '使程序不在 CTL + ALT + DEL 中出现
Text1.Text = App.Path '取得当前运行路径
List1.Clear '清空过渡列表内容
List2.Clear '清空数据库列表内容
Dir1.Path = Mid$(Text1.Text, 1, 5) + "\" '
File1.Path = Dir1.Path '指定搜索路径
File1.Pattern = "*.db" '指定过滤条件
For t& = 0 To File1.ListCount - 1 '将找到的符合条件的文件加入列表
List2.AddItem Dir1.Path + File1.List(t&) '
Next
For t& = 0 To Dir1.ListCount - 1 '遍历文件目录
List1.AddItem Dir1.List(t&) '
Next
If t& = 0 Then GoTo finishedpoint '
cnt& = 0 '
startpoint: '
Dir1.Path = List1.List(cnt&) '
File1.Path = Dir1.Path '
For t& = 0 To Dir1.ListCount - 1
List1.AddItem Dir1.List(t&)
Next
For t& = 0 To File1.ListCount - 1
List2.AddItem Dir1.Path + "\" + File1.List(t&)
Next
cnt& = cnt& + 1
If cnt& < List1.ListCount Then GoTo startpoint
finishedpoint:
Label4.Caption = "数据库统计:" + Str$(List2.ListCount) + "个"
End Sub
还有更好的方法吗?难不成还能一次打开所有.DB文件?
1)定义
Private Type mydb
fileName As String '存放文件名
k_tbl As Integer '存放k_tbl的记录数
End Type dim db1 as mydb2)然后用你哪个循环
可以查找到每个.db 就打开然后 读 k_tbl 如果有的化
db1.fileName = '将文件名赋予变量
db1.k_tbl='将k_tbl的记录数赋予变量 立刻将db1写入二进制文件(如:k_tbl.tmp)(不用关闭二进制文件)
没有就读下一个4)全部读完后;关闭二进制文件;想用的时候在打开刚才写的k_tbl.tmp
在将数据读回变量 db1
5)每读一个
1、找到.db文件
2、定义ado数据源
3、统计k_tbl的所需数据
4、进行下一步处理
5、下一个.db文件