使用c#訪问Access数据库时,提示找不到可安装的 ISAM。例如以下图:

代码例如以下:

connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=db.mdb;Pwd=abcd;";

conn = new OleDbConnection(connectionString);

conn.Open();

DataTable dt = conn.GetSchema("Tables");

if (dt != null && dt.Rows.Count != 0)

{

for (int i = 0; i < dt.Rows.Count; i++ )

{

listBox1.Items.Add(dt.Rows[i]["TABLE_NAME"].ToString());

}

}

conn.Close();

经过多次的改动測试发现。仅仅要连接字符串中出现不可识别的keyword、配置项目名称,就会提示找不到可安装的 ISAM的错误。

上面的连接字符串中的“Pwd”在SQL Server的连接字符串中是可用的,可是在Access中却是不可识别的。

比例如以下面语句也会提示找不到可安装的 ISAM的错误:

connectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=db.mdb;abcd=123";

正确的连接字符串写法:

connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=db.mdb;jet oledb:database password=123;";

//或者:

connectionString = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=db.mdb;jet oledb:database password=123;";

参考文章

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。