SqlError Classe

Definizione

Raccoglie informazioni rilevanti relative a un avviso o a un errore restituito da 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
Ereditarietà
SqlError
Attributi

Esempio

Nell'esempio seguente vengono visualizzate ognuna SqlError all'interno dell'insieme 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

Commenti

Questa classe viene creata dal provider di dati .NET Framework per SQL Server quando si verifica un errore. Un'istanza di SqlError viene creata e gestita da SqlErrorCollection, che a sua volta viene creata dalla SqlException classe .

I messaggi con livello di gravità pari o inferiore a 10 sono di tipo informativo e indicano problemi causati da errori nelle informazioni immesse da un utente. I livelli di gravità da 11 a 16 vengono generati dall'utente e possono essere corretti dall'utente. I livelli di gravità da 17 a 25 indicano errori del software o dell'hardware. Quando si verifica un errore di livello 17, 18 o 19, è possibile continuare a funzionare, anche se potrebbe non essere possibile eseguire un'istruzione specifica.

Se il livello di gravità è pari o inferiore a 19, l'istanza di SqlConnection rimane aperta. Quando il valore del livello di gravità è 20 o superiore, in genere il server chiude l'oggetto SqlConnection. L'utente può tuttavia riaprire la connessione e continuare. In entrambi i casi, viene generata un'eccezione SqlException dal metodo che esegue il comando.

Per altre informazioni sugli errori generati da SQL Server, vedere Errori del motore di database. Per altre informazioni sui livelli di gravità, vedere Gravità degli errori del motore di database.

Proprietà

Class

Ottiene il livello di gravità dell'errore restituito da SQL Server.

LineNumber

Ottiene il numero di riga nel batch dei comandi Transact-SQL o nella stored procedure che contiene l'errore.

Message

Ottiene il testo che descrive l'errore.

Number

Ottiene un numero che identifica il tipo di errore.

Procedure

Ottiene il nome della stored procedure o della RPC (Remote Procedure Call) che ha generato l'errore.

Server

Ottiene il nome dell'istanza di SQL Server che ha generato l’errore.

Source

Ottiene il nome del provider che ha generato l'errore.

State

Ottiene il codice di stato univoco per l'errore.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Ottiene il testo completo del messaggio di errore.

Si applica a

Vedi anche