Partage via


SqlError Classe

Définition

Collecte des informations propres à un avertissement ou à une erreur retournés par 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
Héritage
SqlError
Attributs

Exemples

L’exemple suivant affiche chacun SqlError dans la SqlErrorCollection collection.

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

Remarques

Cette classe est créée par le fournisseur de données .NET Framework pour SQL Server lorsqu’une erreur se produit. Une instance de SqlError est créée et gérée par le SqlErrorCollection, qui à son tour est créé par la SqlException classe .

Les messages dont le niveau de gravité est inférieur ou égal à 10 correspondent à des messages d'information qui indiquent des problèmes dus à des erreurs dans des informations entrées par un utilisateur. Les niveaux de gravité de 11 à 16 sont générés par l’utilisateur et peuvent être corrigés par l’utilisateur. Les niveaux de gravité compris entre 17 et 25 indiquent des erreurs logicielles ou matérielles. Quand une erreur de niveau 17, 18 ou 19 se produit, vous pouvez continuer à travailler, bien que vous ne puissiez peut-être pas exécuter une instruction particulière.

SqlConnection reste ouvert lorsque le niveau de gravité est inférieur ou égal à 19. Lorsque le niveau de gravité est supérieur ou égal à 20, le serveur ferme généralement SqlConnection. L'utilisateur peut toutefois rouvrir la connexion et continuer. Dans les deux cas, SqlException est généré par la méthode qui exécute la commande.

Pour plus d’informations sur les erreurs générées par SQL Server, consultez Erreurs du moteur de base de données. Pour plus d’informations sur les niveaux de gravité, consultez Gravités des erreurs du moteur de base de données.

Propriétés

Class

Obtient le niveau de gravité de l'erreur retournée par SQL Server.

LineNumber

Obtient le numéro de la ligne, dans le lot d'instructions Transact-SQL ou la procédure stockée, qui contient l'erreur.

Message

Obtient le texte décrivant l'erreur.

Number

Obtient un numéro qui identifie le type d'erreur.

Procedure

Obtient le nom de la procédure stockée ou de l'appel de procédure distante (RPC, Remote Procedure Call) qui a généré l'erreur.

Server

Obtient le nom de l'instance de SQL Server qui a généré l'erreur.

Source

Obtient le nom du fournisseur qui a généré l'erreur.

State

Obtient le code d’état unique pour l’erreur.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Obtient le texte complet du message d'erreur.

S’applique à

Voir aussi