我正在尝试在 Visual Studio 2010 Ultimate 和 SQL Server 之间建立连接。我只是做了一个小程序只是为了看看连接是否有效。
每次我尝试连接时,VS 都会抛出一个
ODBCexception
。
“错误 [HY000] [MySQL][ODBC 3.51 驱动程序]无法连接到 MySQL 服务器 在“本地主机”(10061)上“
这是我的连接字符串:
DRIVER={MySQL ODBC 3.51 Driver};Data Source=MY-USERNAME\\SQLEXPRESS;Initial Catalog=MY-DATABASE;Integrated Security=True
此连接字符串是从我在 VS 中建立的数据连接复制的。
有没有人有解决办法?
现在,您正在将 MySQL 驱动程序 (
DRIVER={MySQL ODBC 3.51 Driver}
) 与 Microsoft SQL Server Express 服务器名称 (Data Source=MY-USERNAME\\SQLEXPRESS;
) 混合 - 您真正想要连接到哪一个??
如果您想连接到 SQL Server Express(与 Visual Studio 捆绑在一起),您需要使用本机 .NET SQL 客户端(而不是 ODBC 东西)。
在这种情况下,您的连接字符串将类似于:
server=YourMachine\\SQLEXPRESS;Database=MYDATABASE;Integrated Security=True
或类似的东西 - 请参阅 ConnectionStrings.com 获取大量示例。
在这种情况下,您应该在应用程序中使用
SqlConnection
命名空间中的 SqlCommand
、SqlDataReader
、System.Data.SqlClient
等类。
这个问题很老了,但这里是为了指导那些遇到像我这样问题的人。在设置 Diafaan 短信服务器时,我遇到了同样的问题。问题出在语法上。请注意,在声明服务器、数据库、用户和密码时不要使用引号。这就是为什么错误显示“localhost”从连接字符串中删除所有单引号。
Driver={MySQL ODBC 5.1 Driver};SERVER=localhost;DATABASE= yourdatabase;User= root;Password = yourpassword;
即使您连接到远程 MySql 数据库,也要确保您的 3306 端口未被阻止。我遇到了同样的问题,一旦我们打开 3306 端口,问题就解决了。