我一直在网上寻找答案,但我没有找到任何答案。
我正在尝试在Visual Studio 2010 Ultimate和SQL Server Management Studio之间建立连接。我只是做了一个小程序,看看连接是否有效。
每当我尝试连接时,VS都会抛出ODBCexception
。
“错误[HY000] [MySQL] [ODBC 3.51驱动程序]无法连接到MySQL服务器 在'localhost'(10061)“
这是我的连接字符串:
DRIVER={MySQL ODBC 3.51 Driver};Data Source=MY-USERNAME\\SQLEXPRESS;Initial Catalog=MY-DATABASE;Integrated Security=True
此连接字符串是从我在VS.
中创建的数据连接中复制的任何人都有神奇的解决方案???
请,谢谢! :)
祝你好运!
答案 0 :(得分:2)
目前,您正在将 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
等类。
答案 1 :(得分:0)
这个问题很老,但这里是为了引导任何像我一样有问题的人。在设置Diafaan SMS服务器时,我遇到了同样的问题。问题出在语法上。请注意,在声明服务器,数据库,用户和密码时不要使用引号。这就是为什么错误说'localhost'从连接字符串中删除所有单引号。
Driver={MySQL ODBC 5.1 Driver};SERVER=localhost;DATABASE= yourdatabase;User= root;Password = yourpassword;
答案 2 :(得分:0)
即使您连接到远程MySql数据库,也要确保您的3306端口未被阻止。我遇到了同样的问题,一旦打开3306端口就解决了。