0

我在 Excel 中设置了与访问数据库的连接以更新一些报告。但是当我尝试刷新工作簿时没有收到此错误:找不到可安装的 ISAM。

这是我正在使用的连接字符串:

Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=\\0datblaset\BlaSet\BLA-AssetMangment.mdb;Mode=Share Deny Write;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False

关于我做错了什么的任何想法?有什么建议么?提前感谢您的帮助

4

4 回答 4

1

最可能的原因(至少从我自己的经验中发现)是连接字符串的最后一段:

Jet OLEDB:Bypass UserInfo Validation=False 

如果您或您的用户社区在版本之间使用该文件,例如您使用的是 2013,而您的用户使用的是 2010,那么更高版本会在早期版本无法识别的连接字符串中添加几个附加参数.

有关更多信息,请参阅此链接:https: //support.microsoft.com/en-us/kb/3041386

于 2016-02-03T15:35:23.527 回答
0

这是一个非常复杂的连接字符串,在大多数情况下,您所需要的只是提供程序和文件:

strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\0datblaset\BlaSet\BLA-AssetMangment.mdb;"

检查连接字符串的好地方是http://connectionstring.com

于 2012-08-03T17:46:11.210 回答
0

尝试将来源放在单引号中

于 2012-08-03T17:08:06.513 回答
0

问题在于提供者。在我的特殊情况下,我必须将 DriverID 更改为 1046,就像我的其他连接一样。

DSN=ExcelFiles;DBQ=C:\Source\SourceFile.xls;DefaultDir=C:\Source\;DriverId=**1046**;
FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;

附上我的连接截图

于 2016-09-21T14:31:36.477 回答