有没有办法捕获一个特定的 MySQL 错误或多个特定的 MySQL 错误? 如果错误是“未选择数据库”,我想调用一个方法。
我正在使用 MySQL-Connector/Net。
最佳答案
在异常的 catch
子句中,您应该能够检查 Number
异常的属性以确定引发了哪个 MySql 异常。例如:
try
{
//Blah
}
catch (MySqlException ex)
{
if (ex.Number == 1046)
{
//Handle
}
throw;
}
catch (OtherExceptionType oet)
{
//Handle
}
如果您使用的是 C# 6.0,则可以使用异常过滤器。
try
{
//Blah
}
catch (MySqlException ex) when (ex.Number == 1046)
{
// Handle
}
catch (OtherExceptionType oet)
{
//Handle
}
根据 the documentation,“未选择数据库”的错误编号为 1046 .其他错误编号也列在那里。
关于c# - 捕获特定的 MySQL 错误 (C#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22512847/