问题 它无法连接。

损害

成员
已加入
2016年9月5日
留言内容
6
地点
塞尔维亚
编程经验
3-5
大家好。
首先,我想和大家在一起很高兴。我试图为我的学校项目做点东西,我需要帮助。
我在dreamhost服务器上有我的mysql数据库,我制作了程序来测试我在该数据库上的连接,并且每次收到它无法连接的消息。

这是代码:
        private void button1_Click(object sender, EventArgs e)
        {
            string connetionString = null;
            SqlConnection connection;
            SqlCommand command;
            string sql = null;


            string serverName = textBox1.Text;
            string databaseName = textBox2.Text;
            string userName = textBox3.Text;
            string Password = textBox4.Text;
            int num = 1;
            connetionString = "Data Source=" +serverName+ ";Initial Catalog=" +databaseName+ ";User ID=" +userName+ ";Password=" +Password+ "";
            sql = "SELECT * FROM mitAdminLogIn WHERE adminID =" +num+ "";


            connection = new SqlConnection(connetionString);
            try
            {
                connection.Open();
                command = new SqlCommand(sql, connection);
                command.ExecuteNonQuery();
                command.Dispose();
                connection.Close();
                MessageBox.Show(" ExecuteNonQuery in SqlCommand executed !!");
            }
            catch (Exception ex)
            {
                MessageBox.Show("Can not open connection ! ");
            }
        }

然后我发布了我的程序的照片。
database_phpmyadmin.PNG
请帮助我,谢谢大家。
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,525
地点
悉尼,澳大利亚
编程经验
10+
首先,我删除了显示数据库用户名和密码的附件。用户名还可以,但请不要公开显示密码。如果要发布包含密码的屏幕截图,则至少要先以某种方式使其模糊。

无论如何,问题在于您正在使用SqlClient ADO.NET提供程序,该提供程序专门用于SQL Server。它可能无法连接到MySQL数据库。您需要为此提供支持MySQL的提供程序。除非有其他原因,否则最好的选择是从MySQL下载并安装连接器/网络提供程序。然后,您将以与使用SQL Server的System.Data.SqlClient命名空间几乎完全相同的方式使用MySQL.Data.MySqlClient命名空间。你可以拜访 www.connectionstrings.com 为确保您的连接字符串对MySQL有效,我建议使用MySqlConnectionStringBuilder从各个部分(而不是字符串连接)构建它,因为它不那么容易出错。
 

损害

成员
已加入
2016年9月5日
留言内容
6
地点
塞尔维亚
编程经验
3-5
谢谢 金西尼 为您的答案。我更改了数据库密码,并且从未发布过代理。我将MySQL WorkBench下载为我的c的MySQL的onnector / Net提供程序 并尝试登录,但我有同样的问题。我张贴问题的照片。


概率数据
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,525
地点
悉尼,澳大利亚
编程经验
10+
我将MySQL WorkBench下载为我的c的MySQL的onnector / Net提供程序
不,你没有。如果您下载了MySQL Workbench,则您下载了MySQL Workbench。连接器/网络是另外一回事。如果要从C#应用程序连接到MySQL,则必须实际下载并安装Connector / Net。

当然,如果您的连接字符串无效,那仍然无济于事,因此,如果您无法从其他地方登录到MySQL,那么您也将无法编写有效的连接字符串。这与C#无关,因此作为我很少使用MySQL的人,它不在我的专业知识范围内。
 

损害

成员
已加入
2016年9月5日
留言内容
6
地点
塞尔维亚
编程经验
3-5
阿罕,我现在明白了。
我下载并安装了所有MySQL软件包。在那个包里是 连接器/网络。我联系了我的服务器支持者,我们发现了问题。问题是我的服务器设置为 仅识别dreamhost的ip地址。当我插入我的IP地址时,一切正常。
谢谢 金西尼 您的帮助。你帮了我很多忙
 
最佳 底部