标题:VB获取ACCESS数据库行数
只看楼主
opelwang
Rank: 1
等 级:新手上路
帖 子:78
专家分:3
注 册:2009-7-2
结帖率:77.78%
已结贴  问题点数:20 回复次数:3 
VB获取ACCESS数据库行数

已经打开了ACCESS数据,如何获取总行数,请指教,谢谢。

Private Sub Command2_Click()

    Dim db As New ADODB.Connection
    Dim sPath As String

    db.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & App.Path & _
            "\DC_CapacityData.accdb;Jet OLEDB:Database Password=1234;Persist Security Info=False"

    sPath = App.Path + "\表.xlsx"


    Call db.Execute("insert into DC select * from [表$]  In '" & sPath & "' 'Excel 12.0;'")


Recordset.MoveLast
Recordset.MoveFirst
s = Recordset.RecordCount   ' 获取导入数据的总行数


    db.Close
    Set db = Nothing
    MsgBox "共導入:" & s & " 行數據。", 64 + 0, "提示"
End Sub
搜索更多相关主题的帖子: VB 获取 ACCESS 行数 db 
2017-07-28 00:55
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4912
专家分:29900
注 册:2008-10-15
得分:0 
不是查询 记录数
而应该 查询 受影响的记录数。
Access 如何支持,自己测试一下吧,在手机上没法找。


授人于鱼,不如授人于渔
早已停用QQ了
2017-07-28 09:14
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:934
专家分:5244
注 册:2015-8-10
得分:0 
以下是引用opelwang在2017-7-28 00:55:16的发言:


已经打开了ACCESS数据,如何获取总行数,请指教,谢谢。

Private Sub Command2_Click()

    Dim db As New ADODB.Connection
    Dim sPath As String

    db.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & App.Path & _
            "\DC_CapacityData.accdb;Jet OLEDB:Database Password=1234;Persist Security Info=False"

    sPath = App.Path + "\表.xlsx"


    Call db.Execute("insert into DC select * from [表$]  In '" & sPath & "' 'Excel 12.0;'")


Recordset.MoveLast
Recordset.MoveFirst
s = Recordset.RecordCount   ' 获取导入数据的总行数

    db.Close
    Set db = Nothing
    MsgBox "共導入:" & s & " 行數據。", 64 + 0, "提示"
End Sub

就是这句代码 s = Recordset.RecordCount 返回的是查询到的记录行数
但是你这个Recordset凭空出现的……怎么可能查询到行数
2017-07-28 09:30
ZHRXJR
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:125
帖 子:1034
专家分:5519
注 册:2016-5-10
得分:20 
    db.Open "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & App.Path & "\DC_CapacityData.accdb;Jet OLEDB:Database Password=1234;Persist Security Info=False"
搞不懂,这里连接的是Access数据库,下面又是打开的excel表格,这样根本无非读取Excel表格数据的。
程序代码:
    Dim db As New ADODB.Connection, RS As New ADODB.Recordset
    Dim S As Integer
    db.Open "provider=Microsoft.ACE.OLEDB.12.0;extended properties=excel 12.0;data source=" & App.Path & "\表.xlsx"
    RS.Open "Select * FROM [Sheet1$]", db, 3, 2
    S = RS.RecordCount   ' 获取导入数据的总行数
    RS.Close
    Set RS = Nothing
    db.Close
    Set db = Nothing
    MsgBox "共導入:" & S & " 行數據。", 64 + 0, "提示"

这段代码是打开Excel表格,读取表格的工作表,得到工作表的总行数。

请不要选我!!!
2017-07-28 14:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-479665-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.608462 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved