OleDbConnection错误:您的网络访问被中断

时间:2013-03-21 18:57:03

标签: c# 64-bit oledbconnection oledbcommand

我正在使用ACE OLEDB在MS Access mdb文件上运行查询。这适用于x86计算机,但在x64上失败。

C#代码(使用目标平台x86构建):

string conn = "Provider=Microsoft.ACE.OLEDB.12.0;data source=" + @"C:\abc\db\file.mdb";
OleDbConnection _connOle = new OleDbConnection(conn);
_connOle.Open();

OleDbCommand cmd = new OleDbCommand();
cmd.Connection = _connOle;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select * from myTable";

cmd.ExecuteReader();

我得到的错误是“您的网络访问被中断。要继续,请关闭数据库,然后再次打开它。”

更新:仅当我的mdb文件具有链接表时才会发生这种情况。如果表是导入的,这不会发生!让我补充一点,我确保用户可以完全访问文件夹\ AppData \ Local \ Temp,以防ACE.OLEDB引擎需要访问它以临时存储链接表。

有关如何解决此问题的任何想法?谢谢!

1 个答案:

答案 0 :(得分:0)

关闭现有连接,将其添加到结尾:

conn.close();