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");