我有一个 Windows 应用程序表单,可以在其中输入 IP 以连接到 MySQL 数据库。我需要的帮助是如何编程,这样如果输入 IP 不存在或没有响应,我的表单应该返回一条消息并连接到默认 IP,即 localhost。
问问题
162 次
2 回答
1
你可以尝试这样的事情:
MySqlConnection connection;
if (this.TryConnect("xxx.xxx.xxx.xxx", out connection))
{
// display error message here
}
else if (this.TryConnect("localhost", out connection))
{
// code here
}
TryConnect 函数如下所示:
public bool TryConnect(string ServerIP, out MySqlConnection connection)
{
try
{
const string connectionString = "Server={0};Database=<database>;Uid=<username>;Pwd=<password>;";
var conn = new MySqlConnection(string.Format(connectionString, ServerIP));
conn.Open();
conn.Close();
connection = conn;
return true;
}
catch (Exception)
{
connection = null;
return false;
}
}
于 2012-10-20T15:32:55.543 回答
0
您可以先尝试连接到远程数据库,如果由于某种原因失败(当 IP 有效但没有mysqld
服务器正在运行且无法访问时,它也可能失败),连接到本地数据库(但通知用户) .
于 2012-10-20T14:58:15.497 回答