MySQL Connector/NET 版本注意事項
由於連線到外部伺服器是不可預測的,因此在您的 .NET 應用程式中新增錯誤處理非常重要。當連線時發生錯誤時,MySqlConnection
類別會傳回 MySqlException
物件。此物件有兩個屬性在處理錯誤時很有用
Message
:描述目前例外狀況的訊息。Number
:MySQL 錯誤編號。
在處理錯誤時,您可以根據錯誤編號調整應用程式的回應。連線時最常見的兩個錯誤編號如下
0
:無法連線至伺服器。1045
:使用者名稱、使用者密碼或兩者都無效。
下列程式碼範例示範如何根據實際錯誤管理應用程式的回應
C# 範例
MySql.Data.MySqlClient.MySqlConnection conn;
string myConnectionString;
myConnectionString = "server=127.0.0.1;uid=root;" +
"pwd=12345;database=test";
try
{
conn = new MySql.Data.MySqlClient.MySqlConnection(myConnectionString);
conn.Open();
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
switch (ex.Number)
{
case 0:
MessageBox.Show("Cannot connect to server. Contact administrator");
break;
case 1045:
MessageBox.Show("Invalid username/password, please try again");
break;
}
}
Visual Basic 範例
Dim myConnectionString as String
myConnectionString = "server=127.0.0.1;" _
& "uid=root;" _
& "pwd=12345;" _
& "database=test"
Try
Dim conn As New MySql.Data.MySqlClient.MySqlConnection(myConnectionString)
conn.Open()
Catch ex As MySql.Data.MySqlClient.MySqlException
Select Case ex.Number
Case 0
MessageBox.Show("Cannot connect to server. Contact administrator")
Case 1045
MessageBox.Show("Invalid username/password, please try again")
End Select
End Try
重要
如果您使用多語言資料庫,則必須在連線字串中指定字元集。如果您未指定字元集,連線預設為 latin1
字元集。您可以將字元集指定為連線字串的一部分,例如
MySqlConnection myConnection = new MySqlConnection("server=127.0.0.1;uid=root;" +
"pwd=12345;database=test;Charset=latin1");