在sql中我们有sqlexception.numeric但是在odbcexception中我们没有那个属性,如何获取execption数字?
答案 0 :(得分:3)
由于可以在OdbcException
中封装多个错误,因此您需要遍历Errors property:
}
catch(OdbcException e)
{
for (int i=0; i < e.Errors.Count; i++)
{
Console.WriteLine("Index #{0}", i);
Console.WriteLine("Message: {0}", e.Errors[i].Message);
Console.WriteLine("NativeError: {0}", e.Errors[i].NativeError.ToString());
Console.WriteLine("Source: {0}", e.Errors[i].Source);
Console.WriteLine("SQL: {0}", e.Errors[i].SQLState);
}
}
(注意SqlException
遇到同样的问题,只是SqlException.Number
返回集合中的第一个条目 - 它只是上面循环的包装器,真的)
答案 1 :(得分:0)
查看Errors
的{{1}}集合。每个OdbcException
都有一个OdbcError
属性。