我在网络中有一个访问数据库。该文件之前已上传至网络。当我通过文件管理器在网络中检查相同内容时,我可以看到该文件。但是当我尝试使用此语句读取此文件时
con.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;
Data Source=~\httpdocs\Admin\Acessdatabase\ATT2000.mdb;
Persist Security Info=False;
Jet OLEDB:Database Password=;
providerName=System.Data.OleDb";
它给我的错误是“找不到可安装的ISAM”。
最佳答案
我遇到了此错误,并且我已阅读 this文章来来回回,但没有白费。
最后,我明白了问题出在安全方面。因此,我的解决方案是使用本地(默认)mdw 文件(Microsoft Access 工作组信息),如下所示:
string strConnectionString =
"Provider='Microsoft.Jet.OLEDB.4.0';Data Source=" + p_strFileName +
";Jet OLEDB:Database Password=" + p_strDBPassword +
";Mode=Share Exclusive;Persist Security Info=True;";
// Important part - using mdw file
strConnectionString += "Jet OLEDB:System Database=" +
Environment.GetEnvironmentVariable("APPDATA") +
@"\Microsoft\Access\system.mdw";
并在代码上使用连接:
var conn = new OleDbConnection(strConnectionString);
关于asp.net - 找不到可安装的 ISAM。 '/' 应用程序中的服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17941931/