找不到 OdbcConnection DataName 和 DataSource
本文关键字:DataSource DataName OdbcConnection 找不到 | 更新日期: 2023-09-27 18:28:10
我正在使用 ASP.net 创建一个网络应用程序。我使用OdbcConnection
连接到MySQL
。但它似乎创建了对象,但没有填充数据源和数据名称字段。我有一个著名的错误
[IM002] [Microsoft][ODBC 驱动程序管理器] 找不到数据源名称,未指定默认驱动程序
这是我的代码失败:
OdbcConnection MyConnection;
string MyConString = "DRIVER={MySQL ODBC 5.1 Driver};" + "SERVER=localhost;" + "DATABASE=test;" + "UID=debug_user;" + "PASSWORD=password;" + "OPTION=3";
MyConnection = new OdbcConnection(MyConString);
MyConnection.Open();
我还习惯在我的 web.config 中有一个连接字符串:
<connectionStrings>
<add name="UTRN_DB_ConnectionString" connectionString="DRIVER={MySQL ODBC 5.1 Driver};Database=cjr_db;Server=localhost;UID=cjr_db_user;PWD=password;"/>
</connectionStrings>
我在数据源管理器中设置了驱动程序,MySQL
.我已经卸载并重新安装了所有内容。我不断收到此错误。我只是不明白为什么当我仍然在连接字符串中指定所有内容(端口等(并且它一直失败时收到此错误
编辑:这是我的web.config
<connectionStrings>
<add name="UTRN_DB_ConnectionString" connectionString="Driver={MySQL ODBC 5.1 Driver};Database=cjr_db;Server=localhost;Uid=cjr_db_user;Pwd=password;providerName=(System.Data.Odbc)"/>
</connectionStrings>
这就是我读它的方式:
string conString = WebConfigurationManager.ConnectionStrings["UTRN_DB_ConnectionString"].ConnectionString;
string conString2 = ConfigurationManager.ConnectionStrings["UTRN_DB_ConnectionString"].ConnectionString;
using (OdbcConnection connection = new System.Data.Odbc.OdbcConnection(conString2))
{
connection.Open();
...
}
连接字符串必须包含提供程序和数据源,如下所示:
string MyConString = "Provider=(Data Provider);Data Source=(Path of source file)"
web.config
文件中的连接字符串中存在一些拼写错误。它应该是Driver
而不是DRIVER
,Pwd
而不是PWD
,Uid
而不是UID
等等。请将您的代码更改为以下代码
Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
我在这里找到了问题的答案:塔达阿姆基本上,您必须寻找计算机上安装的64位和32位的差异。默认情况下,VS 正在寻找 32。在 ODBC 源管理器中,它显示 64。因此,您要么将项目配置为查找 64 位,要么安装 MySQL ODBC 的 32 位版本。