Rumah > Artikel > pembangunan bahagian belakang > 具体介绍使用c#访问Access数据库时,提示找不到可安装的ISAM(图)
使用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();
经过多次的修改测试发现,只要连接字符串中出现不可识别的关键字、配置项目名称,就会提示找不到可安装的 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;";
使用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();
经过多次的修改测试发现,只要连接字符串中出现不可识别的关键字、配置项目名称,就会提示找不到可安装的 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;";
Atas ialah kandungan terperinci 具体介绍使用c#访问Access数据库时,提示找不到可安装的ISAM(图). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!