SqlError.Class 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得從 SQL Server 傳回的錯誤之嚴重性層級。
public:
property System::Byte Class { System::Byte get(); };
public byte Class { get; }
member this.Class : byte
Public ReadOnly Property Class As Byte
屬性值
從 1 到 25 的值,表示錯誤的嚴重性層級。 預設值是 0。
範例
下列範例會顯示集合內的每一個 SqlErrorSqlErrorCollection 。
using Microsoft.Data.SqlClient;
using System.Collections.Generic;
using System.Text;
namespace Classic_WebData_SqlError.StateCS
{
class Program
{
static void Main()
{
//DisplaySqlErrors();
}
public void DisplaySqlErrors(SqlException exception)
{
for (int i = 0; i < exception.Errors.Count; i++)
{
Console.WriteLine("Index #" + i + "\n" +
"Source: " + exception.Errors[i].Source + "\n" +
"Number: " + exception.Errors[i].Number.ToString() + "\n" +
"State: " + exception.Errors[i].State.ToString() + "\n" +
"Class: " + exception.Errors[i].Class.ToString() + "\n" +
"Server: " + exception.Errors[i].Server + "\n" +
"Message: " + exception.Errors[i].Message + "\n" +
"Procedure: " + exception.Errors[i].Procedure + "\n" +
"LineNumber: " + exception.Errors[i].LineNumber.ToString());
}
Console.ReadLine();
}
}
}
備註
安全性層級 10 或以下的訊息是告知性的訊息,用以指出問題產生的原因是使用者輸入了錯誤的資訊。 從 11 到 16 的嚴重性層級是由使用者產生,而且可由使用者更正。 17 到 25 的嚴重性層級表示軟體或硬體錯誤。 當發生層級 17、18 或 19 錯誤時,您可以繼續運作,雖然您可能無法執行特定的語句。
當嚴重性層級為 19 或低於 19 時,SqlConnection 仍保持開啟。 發生 20 或以上的安全性層級時,伺服器通常會關閉 SqlConnection。 但是,使用者可以再次開啟連線,然後繼續進行。 在這兩個情況中,SqlException 皆由執行該命令的方法所產生。
如需SQL Server所產生的錯誤詳細資訊,請參閱Database Engine 事件和錯誤。