借助C#.NET将数据从我的计算机连接并插入到服务器的MySQL DB表中

时间:2019-03-22 16:04:55

标签: c# mysql cpanel remote-mysql

我想与服务器的MySql DB(cpanel)连接。尽管每次收到Messegebox的消息时都没有错误:无法连接到任何指定的任何MySql主机。

output type

using MySql.Data.MySqlClient;
        connString = "SERVER = ********;PORT=3306;DATABASE=********;UID=**********;PASSWORD=*********";
        try
        {
            conn = new MySqlConnection();
            conn.ConnectionString = connString;
            conn.Open();
            MessageBox.Show("Server is online");

        }
        catch (MySql.Data.MySqlClient.MySqlException ex)
        { MessageBox.Show(ex.Message);}

3 个答案:

答案 0 :(得分:0)

我会考虑使用ConnectionStringBuilder。还要注意“使用”的使用。这样可以确保资源一经使用便被处置。

private MySqlConnectionStringBuilder sConnString = new MySqlConnectionStringBuilder
{
    Server = "",
    UserID = "",
    Password = "",
    Database = ""
};

private void Test(){

    // open connection to db
    using (MySqlConnection conn = new MySqlConnection(sConnString.ToString()))
    {
        using (MySqlCommand cmd = conn.CreateCommand())
        {
            try
            {
                conn.Open();
                cmd.CommandText = "SELECT * FROM foo WHERE OrderID = @OrderID";

                // Add any params
                cmd.Parameters.AddWithValue("@OrderID", "1111");
                cmd.Prepare();
                cmd.ExecuteNonQuery();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                return;
            }
        }
    }
}

答案 1 :(得分:0)

如果您尝试从外部连接到MySQL服务器,则需要启用外部连接。

请注意,如果您向包含数据库信息的其他人提供应用程序,则这是一个安全漏洞。要解决此问题,您需要创建一个Web-API。

答案 2 :(得分:0)

将应用程序连接到远程服务器MySql Server的第一步是验证它是否允许外部连接,默认情况下,root用户已锁定,要允许本地连接,您可以尝试与root用户连接,方法是在MySql:

 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
 FLUSH PRIVILEGES;
'root': You can change it with your user.
'%': allows all connections, you can limit it typing an IP.

第二步是验证您的MySql .net连接器

干杯!