我在Excel工作簿中编写了一些VBA代码,以便从桌面上同一目录下的Access数据库中检索数据。它在我的计算机和其他几台运行Windows XP的机器上运行良好,但是当我们在Vista计算机上测试这一点时,我们遇到了以下错误:
找不到可安装的ISAM
我在网上做了很多搜索,但似乎找不到具体的答案。连接字符串似乎很好,正如我提到的,它可以在几台机器上工作。
有人知道是什么导致了这一切吗?我的连接字符串如下:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\ptdb\Program Tracking Database.mdb;谢谢
发布于 2012-05-23 05:36:27
将单引号放在Extended Properties周围
OleDbConnection oconn =
new OleDbConnection(
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=1;';");试试看,真的很管用。
发布于 2009-02-04 16:44:53
尝试将单引号放在数据源周围:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source='D:\ptdb\Program Tracking Database.mdb';问题往往是对解析器有意义的空白。
如果您有其他属性(例如),则它们的值也可能必须包含在单引号中:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source='D:\ptdb\Program Tracking Database.mdb'; Extended Properties='Excel 8.0;HDR=YES;IMEX=1;';您也可以使用双引号;但是,您可能不得不转义它们,我发现算法比使用单引号更痛苦。
发布于 2013-04-08 12:25:03
只需在连接字符串中使用Jet:。对我来说已经解决了。
下面是一个例子:
"Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=E:\Database.mdb;Jet OLEDB:Database Password=b10w"https://stackoverflow.com/questions/512143
复制相似问题