SQL PRINT with InfoMessage



如何在SQL查询中区分错误消息和PRINT?

void myConnection_InfoMessage(object sender, SqlInfoMessageEventArgs e)
{
     if (e.Errors.Count > 0)
     {
     }
}

它将 PRINT 语句视为错误。

如何区分两者?

对于每个错误(SqlError对象),可以检查 Class 属性:

严重性级别为 10 或更低的消息是信息性的,指示由用户输入的信息错误导致的问题。从 11 到 16 的严重性级别由用户生成,可由用户更正。严重性级别从 17 到 25 表示软件或硬件错误。当发生级别 17、18 或 19 错误时,您可以继续工作,尽管您可能无法执行特定语句。

PRINTClass为 0,但通常您应该(如其所说)将 10 或更低视为"信息"而不是真正的错误。

最新更新