SqlError Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Sammelt Informationen, die für eine Warnung oder einen Fehler relevant sind, die von SQL Server zurückgegeben werden.
public ref class SqlError sealed
[System.Serializable]
public sealed class SqlError
[<System.Serializable>]
type SqlError = class
Public NotInheritable Class SqlError
- Vererbung
-
SqlError
- Attribute
Beispiele
Im folgenden Beispiel werden die einzelnen SqlError Elemente in der SqlErrorCollection Auflistung angezeigt.
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
Hinweise
Diese Klasse wird vom .NET Framework Datenanbieter für SQL Server erstellt, wenn ein Fehler auftritt. Eine Instanz von SqlError wird von der SqlErrorCollectionKlasse erstellt und verwaltet, die wiederum von der SqlException Klasse erstellt wird.
Nachrichten mit einem Schweregrad von 10 oder weniger sind informationsmäßig und weisen auf Probleme hin, die durch Fehler in Informationen verursacht wurden, die ein Benutzer eingegeben hat. Schweregrade von 11 bis 16 werden vom Benutzer generiert und können vom Benutzer korrigiert werden. Schweregrade von 17 bis 25 deuten auf Software- oder Hardwarefehler hin. Wenn ein Fehler der Ebene 17, 18 oder 19 auftritt, können Sie den Vorgang fortsetzen, obwohl Sie möglicherweise keine bestimmte Anweisung ausführen können.
Die SqlConnection bleibt offen, wenn der Schweregrad 19 oder weniger beträgt. Wenn der Schweregrad 20 oder höher ist, wird der Server in der Regel geschlossen SqlConnection. Der Benutzer kann die Verbindung jedoch erneut öffnen und fortfahren. In beiden Fällen wird eine SqlException von der Methode generiert, die den Befehl ausführt.
Weitere Informationen zu fehlern, die von SQL Server generiert werden, finden Sie unter Datenbank-Engine Errors. Weitere Informationen zu Schweregraden finden Sie unter Datenbank-Engine Fehlerschweregrad.
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Ruft den Schweregrad des von SQL Server zurückgegebenen Fehlers ab. |
| LineNumber |
Ruft die Zeilennummer innerhalb des Transact-SQL Befehlsbatches oder der gespeicherten Prozedur ab, die den Fehler enthält. |
| Message |
Ruft den Text ab, der den Fehler beschreibt. |
| Number |
Ruft eine Zahl ab, die den Typ des Fehlers identifiziert. |
| Procedure |
Ruft den Namen der gespeicherten Prozedur oder des Remoteprozeduraufrufs (REMOTE Procedure Call, RPC) ab, der den Fehler generiert hat. |
| Server |
Ruft den Namen der Instanz von SQL Server ab, die den Fehler generiert hat. |
| Source |
Ruft den Namen des Anbieters ab, der den Fehler generiert hat. |
| State |
Ruft den eindeutigen Zustandscode für den Fehler ab. |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Ruft den vollständigen Text der Fehlermeldung ab. |