0
我想爲我的程序創建一個mysql連接檢查程序,因爲我總是使用我的平常顧問SO,並且我登錄到這個Question,答案並不完全正確。檢查MySql數據庫連接
問題是: 如何檢查在c#有效的mysql連接?
我想爲我的程序創建一個mysql連接檢查程序,因爲我總是使用我的平常顧問SO,並且我登錄到這個Question,答案並不完全正確。檢查MySql數據庫連接
問題是: 如何檢查在c#有效的mysql連接?
這是我自己的版本來檢查MySQL連接。
public static bool checkDB_Conn()
{
var conn_info = "Server=address;Port=3306;Database=dbhere;Uid=admin;Pwd=123";
bool isConn = false;
MySqlConnection conn = null;
try
{
conn = new MySqlConnection(conn_info);
conn.Open();
isConn = true;
}
catch (ArgumentException a_ex)
{
/*
Console.WriteLine("Check the Connection String.");
Console.WriteLine(a_ex.Message);
Console.WriteLine(a_ex.ToString());
*/
}
catch (MySqlException ex)
{
/*string sqlErrorMessage = "Message: " + ex.Message + "\n" +
"Source: " + ex.Source + "\n" +
"Number: " + ex.Number;
Console.WriteLine(sqlErrorMessage);
*/
isConn = false;
switch (ex.Number)
{
//http://dev.mysql.com/doc/refman/5.0/en/error-messages-server.html
case 1042: // Unable to connect to any of the specified MySQL hosts (Check Server,Port)
break;
case 0: // Access denied (Check DB name,username,password)
break;
default:
break;
}
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
}
return isConn;
}
你應該使用'using',而不是'finally'。 – SLaks
是我不知道,「用」被關閉連接。由於 – Incognito
compying此代碼,以我的項目錯誤說:「ConnectionState」這個名字不會在當前上下文中。 既 使用MySql.Data; 使用MySql.Data.MySqlClient; 目前... – docesam