我发现了很多修复此未处理异常的建议,并且我已经尝试了所有我能找到(并理解)的建议。已经好几个小时了,但仍然没有结果……我创建了一个 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 在……
如果你能帮助我,我将不胜感激。这是我编程的第一年,到目前为止一切顺利,但现在由于这个反复出现的错误,我在类里面被“甩在了后面”。提前谢谢你:)
最佳答案
我的教授能够找到问题所在。由于某种原因,我的计算机无法将 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"
关于c# - 无法连接到任何指定的 mysql 主机。 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16365192/