这是我与.NET中访问数据库的连接:
OdbcConnection conn = new OdbcConnection("Driver={Microsoft Access Driver (*.mdb)};Dbq=" + path + "\\Access.mdb;Uid=;Pwd=;");
我遇到了这个问题:
base {System.Data.Common.DbException} = {"ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified"}
我从这里尝试了几个数据库连接字符串:http://www.connectionstrings.com/access但没有一个工作。
对此有何建议?
提前致谢。
答案 0 :(得分:3)
有一种简单的方法来获取连接字符串,请按以下步骤进行尝试:
.udl
。有关详细信息,请参阅This。
答案 1 :(得分:1)
正如您在上面链接的同一站点中所看到的,连接到访问数据库的默认方式是指定Microsoft.Jet.OLEDB.4.0
提供程序:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;
这是否有效,如果没有,你会得到什么样的错误?
答案 2 :(得分:0)
首先,path
是有效字段吗?
其次,尝试输出用于连接数据库文件的String,作为完整性检查。确保输出字符串符合您的预期,并且指定的文件存在。
答案 3 :(得分:0)
试试这个
http://www.connectionstrings.com/
更具体地说,这个
http://www.connectionstrings.com/access
我会将您的代码更改为以下内容:
OdbcConnectionStringBuilder sb = new OdbcConnectionStringBuilder();
sb.Driver = "Microsoft Access Driver (*.mdb)";
sb.Add("Dbq", "C:\\info.mdb");
sb.Add("Uid", "Admin");
sb.Add("Pwd", "pass!word1");
OdbcConnection con = new OdbcConnection(sb.ConnectionString);
答案 4 :(得分:0)
web.config添加
add name="odbcConnectionString"
connectionString="Driver={Microsoft Access Driver (*.mdb)};DBQ=|DataDirectory|info.mdb; "
providerName="System.Data.OleDb"