0

我找到了很多解决这个未处理异常的建议,并且我尝试了所有我能找到(并理解)的建议。已经好几个小时了,但仍然没有结果……我创建了一个 Windows 窗体应用程序,它要求提供客户的信息,我正在尝试将此信息插入到我在 MySQL 中创建的数据库中。这是似乎适用于除我之外的所有人的代码:

public partial class Form1 : Form
{

    private MySqlConnection mConn;
    public Form1()
    {
        InitializeComponent();
        mConn = new MySqlConnection("Persist Security Info=False; server=localhost; database=xxxxxxx;uid=yyyyyyy;password=zzzzzzzz");
    }

    private void button1_Click(object sender, EventArgs e)
    {
        mConn.Open();
        if (mConn.State == ConnectionState.Open)
        {
            MySqlCommand command = new MySqlCommand("INSERT INTO client VALUES (" + textBox1.Text + ",' " + textBox2.Text + "', '" + textBox3.Text + "'," + textBox4.Text + ",' " + textBox5.Text + "')", mConn);
            command.ExecuteNonQuery();
            mConn.Close();
        }
        else
            MessageBox.Show("Connection Failed!");
    }
}

这是异常文本:

MySql.Data.MySqlClient.MySqlException (0x80004005):无法连接到任何指定的 MySQL 主机。---> System.Net.Sockets.SocketException (0x80004005): 请求的地址在此上下文中无效 [::1]:3306 in ...

如果你能帮助我,我将不胜感激。这是我编程的第一年,到目前为止它已经过得很好,但现在由于这个反复出现的错误,我在课堂上“落后”了。先感谢您 :)

4

2 回答 2

3

我的教授能够找到问题所在。由于某种原因,我的计算机无法将术语 localhost 识别为 IP 地址 127.0.0.1,因此当我在连接字符串中写入server = localhost时,发生了错误。当我尝试编写server = 127.0.0.1时,一切都很顺利。我希望这是有帮助的。

工作连接字符串:

"Persist Security Info=False;server=127.0.0.1;database=xx;uid=yy;password=zz"
于 2013-05-17T12:52:34.173 回答
0

与远程站点建立连接的问题将通过提供该数据库的公共 IP而不是私有 IP 来解决。

它会帮助你。尝试一下。

于 2015-06-03T05:09:28.983 回答