VB6& Access 2007连接问题

时间:2013-11-05 20:50:37

标签: ms-access vb6 ms-access-2007 database-connection

好的,所以我读过这个相同的问题,但答案对我不起作用:

Connecting VB6 and MS Access 2007

我删除了对 Microsoft DAO 3.6对象库的引用,并将其替换为对 Microsoft Office 12.0 Access数据库引擎对象的引用。

这是我的代码:

Dim rcdSetData As ADODB.Recordset

Set rcdSetData = New ADODB.Recordset
rcdSetData.CursorType = adOpenStatic
rcdSetData.ActiveConnection = _
    "Provider=Microsoft.Jet.OLEDB.4.0; " _
    & "Data Source=" & DBName & "; "

我可以正常打开Access 2003 * .mdb文件,但是当我尝试打开Access 2007 * .accdb文件时,我得到:

Error #blahblah, Unrecognized database format 'C:\path\foo.accdb'

foo.accdb是一个有效的Access 2007文件,就Access 2007而言。没有密码,BTW,当我运行程序时它没有在Access中打开。

我很难过。我在网上找到的每个答案都说我正在做这件事......:\

2 个答案:

答案 0 :(得分:3)

DAO引用(对于该库的Access之前版本或之后的版本)是无关紧要的,因为您的VB代码正在使用ADO。你的问题在于连接字符串。尝试替换

"Provider=Microsoft.Jet.OLEDB.4.0; " _

"Provider=Microsoft.ACE.OLEDB.12.0; " _

答案 1 :(得分:0)

如果您最近重新安装了VB6,请确保为其下载并安装Service Pack SP6。