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
public sealed class SqlError
[System.Serializable]
public sealed class SqlError
type SqlError = class
[<System.Serializable>]
type SqlError = class
Public NotInheritable Class SqlError
- Dziedziczenie
-
SqlError
- Atrybuty
Przykłady
W poniższym przykładzie są wyświetlane poszczególne SqlError elementy 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 dostawcę danych .NET Framework 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 wprowadzonych przez użytkownika. 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ż nie można 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 SqlConnectionwartość . 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 na temat błędów generowanych przez SQL Server, zobacz Błędy aparatu bazy danych. Aby uzyskać więcej informacji na temat poziomów ważności, zobacz Ważność błędu aparatu bazy danych.
Właściwości
Class |
Pobiera poziom ważności błędu zwróconego z SQL Server. |
LineNumber |
Pobiera numer wiersza w partii poleceń Języka Transact-SQL lub procedurę składowaną zawierającą 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
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() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Pobiera pełny tekst komunikatu o błędzie. |