C#SqlConnection无法连接

时间:2011-07-22 17:47:19

标签: c# mysql database sqlconnection

我想连接到在线SQL数据库。要做到这一点,我使用这段代码:

SqlConnection conn = new SqlConnection("Data Source=77.243.225.193;User ID=rune;Password=secret;database=test");
conn.Open();
Textbox.Text = "ServerVersion: " + conn.ServerVersion.ToString() + "\n\r";
Textbox.Text = "State: " + conn.State.ToString();

我刚从互联网上获取代码,因为这是我第一次使用它。 不知何故,这不起作用,因为它说它无法连接到数据库。谁能解释我为什么?

谢谢!

3 个答案:

答案 0 :(得分:6)

通过一系列测试并检查过去的测试:

  1. 77.243.255.139是有效地址吗?你可以ping它吗?
  2. Sql Server @ IP地址是否需要在特定端口上建立连接,例如77.243.255.139,1724?
  3. test是否是在线并挂载在服务器上的数据库的有效名称?
  4. rune是服务器的有效SQL登录名吗?
  5. rune是否具有访问test数据库的适当权限?
  6. 密码是否正确?
  7. 显然有很多原因可能导致您无法连接,您收到的确切错误消息是什么?

    UPDATE :根据您的上一条评论,您说您使用的是phpMyAdmin ...这是MySql数据库的管理工具(如果我错了,有人会纠正我)?

    如果是MySql数据库,则需要使用MySql ADO.NET Connector以及有效的MySql连接字符串。查看http://www.mysql.com/products/connector/

答案 1 :(得分:1)

如果这是SQL Server Express(或开发人员版),那么我假设未启用使用TCP / IP的远程连接(这是默认设置)。如果您有权访问SQL Server,那么我建议您按照此链接中的说明进行操作:Configure SQL Server for remote connections。您还可以尝试从命令行使用“telnet 77.243.255.139 1433”telnet到端口1433(默认SQL Server端口)。

答案 2 :(得分:0)

尝试

Data Source=77.243.225.193,1433;Network Library=DBMSSOCN;Initial Catalog=test;
User ID=rune;Password=secret;

Network Library=DBMSSOCN

告诉提供者使用TCP / IP而不是命名管道。

我从你之前的评论中注意到,对IP地址存在一些混淆,我认为它是77.243.225.193,但是找出确定的地址;如果你不这样做,你将无处可去!