回 帖 发 新 帖 刷新版面

主题:[讨论]用ADOX2.8创建3.5.1的Access数据库的问题

引用Microsoft ADO Ext.2.8 for DDL and security

Dim cat As ADOX.Catalog
Set cat = New ADOX.Catalog
Dim connstr As String
connstr = "Provider=Microsoft.Jet.OLEDB.3.5.1;Data Source='E:\test.gwc';Jet OLEDB:Database Password='test';"
[color=red]cat.Create connstr[/color]
Set cat = Nothing

运行时出错“没有注册类别”

如果换成“Provider=Microsoft.Jet.OLEDB.4.0;...",则正确。由于考虑到公司使用的其它软件都是采用3.5.1的,所以不能用4.0的。(其它的几个软件在创建数据库时是用DAO 3.5.1做的,但我不想用DAO)

网上称 4.0对应的是access 2000/2003,而3.5.1对应的是access 97 。如果想要创建access 97的数据库,需要引用Microsoft ADO Ext.2.1 for DDL and security 。我电脑上安装的是office 2003,msadox.dll的版本为2.81.1132.0,找不到2.1版本的dll。

我就纳闷了,怎么高版本的不再支持低版本了呢?[em10]

回复列表 (共1个回复)

沙发

自己解决了,分享一下。
Dim cat As ADOX.Catalog
Set cat = New ADOX.Catalog
Dim connstr As String
connstr = "Provider=Microsoft.Jet.OLEDB.4.0;[color=red]Jet OLEDB:Engine Type=4[/color];Data Source='E:\test.gwc';Jet OLEDB:Database Password='test';"
cat.Create connstr
Set cat = Nothing

我来回复

您尚未登录,请登录后再回复。点此登录或注册