0

我正在尝试.accdb通过 C# 程序将表更新为文件。

我以这种方式打开了连接:

cn.ConnectionString= @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\test.accdb;Persist Security Info=True;Database Password=myDb";

cmd.Connection = cn;

string query = "UPDATE MY_TABLE SET NOTE='TEST'";
cmd.CommandText = query;

cn.Open();

但我收到此错误:

找不到可安装的 ISAM

我还安装了 AccessDatabaseEngine x86,但什么也没发生。

有什么建议么?

谢谢!

4

1 回答 1

0

“找不到可安装的 isam”有点笼统,通常与连接字符串或驱动程序位数有关。对于使用扩展属性(如数据库密码)的连接字符串,它们可能需要添加前缀,以使其分配为该特定驱动程序的扩展属性

在您的情况下,我认为您缺少数据库密码属性的相关说明符,这不是典型的 OLE 连接字符串属性:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\test.accdb; Jet OLEDB:Database Password=MyDbPassword;

注意数据库密码说明符之前的额外“Jet OLEDB”

connectionstrings.com 有大量关于这些东西的信息,并且可以作为 Jet 和 Ace 可以连接到的许多不同薄的便利资源

于 2019-09-21T06:46:12.653 回答