找不到 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();
...
}

找不到 OdbcConnection DataName 和 DataSource

连接字符串必须包含提供程序和数据源,如下所示:

string MyConString = "Provider=(Data Provider);Data Source=(Path of source file)"

web.config文件中的连接字符串中存在一些拼写错误。它应该是Driver而不是DRIVERPwd而不是PWDUid而不是UID等等。请将您的代码更改为以下代码

Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

我在这里找到了问题的答案:塔达阿姆基本上,您必须寻找计算机上安装的64位和32位的差异。默认情况下,VS 正在寻找 32。在 ODBC 源管理器中,它显示 64。因此,您要么将项目配置为查找 64 位,要么安装 MySQL ODBC 的 32 位版本。