SqlError Classe

Définition

Collecte des informations pertinentes pour un avertissement ou une erreur retourné par SQL Server.

public ref class SqlError sealed
[System.Serializable]
public sealed class SqlError
[<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éée par la SqlException classe.

Les messages avec un niveau de gravité de 10 ou moins sont des informations et indiquent des problèmes causés par des erreurs dans les 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é de 17 à 25 indiquent des erreurs logicielles ou matérielles. Lorsqu’une erreur de niveau 17, 18 ou 19 se produit, vous pouvez continuer à fonctionner, bien que vous ne puissiez peut-être pas exécuter une instruction particulière.

Le SqlConnection reste ouvert lorsque le niveau de gravité est de 19 ou moins. Lorsque le niveau de gravité est égal à 20 ou supérieur, le serveur ferme généralement le SqlConnection. Toutefois, l’utilisateur peut rouvrir la connexion et continuer. Dans les deux cas, un SqlException est généré par la méthode exécutant la commande.

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

Propriétés

Nom Description
Class

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

LineNumber

Obtient le numéro de ligne dans le lot de commandes Transact-SQL ou la procédure stockée qui contient l’erreur.

Message

Obtient le texte décrivant l’erreur.

Number

Obtient un nombre 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) 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

Nom Description
Equals(Object)

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

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Obtient le texte complet du message d’erreur.

S’applique à

Voir aussi