SqlError Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zbiera informacje istotne dla ostrzeżenia lub błędu zwróconego przez SQL Server.
public ref class SqlError sealed
[System.Serializable]
public sealed class SqlError
[<System.Serializable>]
type SqlError = class
Public NotInheritable Class SqlError
- Dziedziczenie
-
SqlError
- Atrybuty
Przykłady
Poniższy przykład przedstawia poszczególne elementy SqlError w kolekcji SqlErrorCollection .
public static void ShowSqlException(string connectionString)
{
string queryString = "EXECUTE NonExistantStoredProcedure";
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(queryString, connection);
try
{
command.Connection.Open();
command.ExecuteNonQuery();
}
catch (SqlException ex)
{
DisplaySqlErrors(ex);
}
}
}
private static void DisplaySqlErrors(SqlException exception)
{
for (int i = 0; i < exception.Errors.Count; i++)
{
Console.WriteLine("Index #" + i + "\n" +
"Error: " + exception.Errors[i].ToString() + "\n");
}
Console.ReadLine();
}
Public Sub ShowSqlException(ByVal connectionString As String)
Dim queryString As String = "EXECUTE NonExistantStoredProcedure"
Using connection As New SqlConnection(connectionString)
Dim command As New SqlCommand(queryString, connection)
Try
command.Connection.Open()
command.ExecuteNonQuery()
Catch ex As SqlException
DisplaySqlErrors(ex)
End Try
End Using
End Sub
Private Sub DisplaySqlErrors(ByVal exception As SqlException)
Dim i As Integer
For i = 0 To exception.Errors.Count - 1
Console.WriteLine("Index #" & i & ControlChars.NewLine & _
"Error: " & exception.Errors(i).ToString() & ControlChars.NewLine)
Next i
Console.ReadLine()
End Sub
Uwagi
Ta klasa jest tworzona przez program .NET Framework Dostawca danych dla SQL Server w przypadku wystąpienia błędu. Wystąpienie klasy SqlError jest tworzone i zarządzane przez SqlErrorCollectionklasę , która z kolei jest tworzona przez klasę SqlException .
Komunikaty o poziomie ważności 10 lub mniejszym są informacyjne i wskazują problemy spowodowane błędami w informacjach, które wprowadził użytkownik. Poziomy ważności od 11 do 16 są generowane przez użytkownika i mogą być poprawiane przez użytkownika. Poziomy ważności od 17 do 25 wskazują błędy oprogramowania lub sprzętu. Gdy wystąpi błąd poziomu 17, 18 lub 19, możesz kontynuować pracę, chociaż może nie być w stanie wykonać określonej instrukcji.
Pozostaje SqlConnection otwarty, gdy poziom ważności wynosi 19 lub mniej. Gdy poziom ważności wynosi 20 lub więcej, serwer zwykle zamyka SqlConnectionserwer . Użytkownik może jednak ponownie otworzyć połączenie i kontynuować. W obu przypadkach SqlException element jest generowany przez metodę wykonującą polecenie .
Aby uzyskać więcej informacji o błędach generowanych przez SQL Server, zobacz błędy Database Engine. Aby uzyskać więcej informacji na temat poziomów ważności, zobacz Database Engine Ważność błędów.
Właściwości
| Nazwa | Opis |
|---|---|
| Class |
Pobiera poziom ważności błędu zwróconego z SQL Server. |
| LineNumber |
Pobiera numer wiersza w Transact-SQL wsadowej polecenia lub procedury składowanej zawierającej błąd. |
| Message |
Pobiera tekst opisujący błąd. |
| Number |
Pobiera liczbę identyfikującą typ błędu. |
| Procedure |
Pobiera nazwę procedury składowanej lub zdalnego wywołania procedury (RPC), które wygenerowało błąd. |
| Server |
Pobiera nazwę wystąpienia SQL Server, które wygenerowało błąd. |
| Source |
Pobiera nazwę dostawcy, który wygenerował błąd. |
| State |
Pobiera unikatowy kod stanu błędu. |
Metody
| Nazwa | Opis |
|---|---|
| Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
| GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
| GetType() |
Pobiera Type bieżącego wystąpienia. (Odziedziczone po Object) |
| MemberwiseClone() |
Tworzy płytkią kopię bieżącego Object. (Odziedziczone po Object) |
| ToString() |
Pobiera pełny tekst komunikatu o błędzie. |