System.Data.dll 中出现“System.Data.OleDb.OleDbException”类型的未处理异常附加信息:无法识别的数据库格式

Posted

技术标签:

【中文标题】System.Data.dll 中出现“System.Data.OleDb.OleDbException”类型的未处理异常附加信息:无法识别的数据库格式【英文标题】:An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll Additional information: Unrecognized database format 【发布时间】:2017-02-15 22:01:50 【问题描述】:

我试图打开访问数据库。我可以从 Visual Studio 的服务器资源管理器中打开它,我可以浏览所有表和其他数据。但是,如果我尝试以编程方式执行此操作,则会得到主题中的异常。 我使用了相同的 ConnectionString,我复制了它。是什么原因?

var cs ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\\Data\\Kadry2002.mdb;Persist Security Info=False;";
var connection = new OleDbConnection(cs);
connection.Open();

【问题讨论】:

下次在发布可能重复的问题之前请做一些研究:***.com/questions/14024660/… How to open connection with Microsoft Access database in C#的可能重复 帖子不重复! Microsoft.ACE.OleDB.12.0 我还有一个问题,因为在同一个平台上,我可以使用 VS Server Explorer 连接到我的数据库。接下来,我从连接属性中复制 ConnectionString。使用相同的 ConnectionString 我试图从我的程序连接到这个数据库,但这次我得到了异常。好的,当我将 ConnectionString 替换为“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\Kadry2002.mdb”时,它开始起作用了。问题解决了。 【参考方案1】:

好的,我解决了这个问题。当我用

替换 ConnectionString 时它开始工作
var cs = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\Kadry2002.mdb";

【讨论】:

以上是关于System.Data.dll 中出现“System.Data.OleDb.OleDbException”类型的未处理异常附加信息:无法识别的数据库格式的主要内容,如果未能解决你的问题,请参考以下文章

SQL 异常未处理 - System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的未处理异常

System.Data.dll 中出现“System.InvalidOperationException”类型的第一次机会异常

System.Data.dll 中出现“System.Data.OleDb.OleDbException”类型的未处理异常附加信息:无法识别的数据库格式

错误提示:未处理的“System.NullReferenceException”类型的异常出现在 system.data.dll 中。 其他信息: 未将对象引用设置到对象的实例。

vb 上的 System.Data.dll 中发生错误 System.InvalidOperationException' [重复]

C# - INSERT INTO 语句中的语法错误(System.Data.dll 中发生“System.Data.OleDb.OleDbException”类型的未处理异常)