Partager via


OdbcException Classe

Définition

Exception levée lorsqu'une source de données ODBC retourne un avertissement ou une erreur. Cette classe ne peut pas être héritée.

public ref class OdbcException sealed : System::Data::Common::DbException
public ref class OdbcException sealed : SystemException
public sealed class OdbcException : System.Data.Common.DbException
[System.Serializable]
public sealed class OdbcException : SystemException
[System.Serializable]
public sealed class OdbcException : System.Data.Common.DbException
type OdbcException = class
    inherit DbException
[<System.Serializable>]
type OdbcException = class
    inherit SystemException
[<System.Serializable>]
type OdbcException = class
    inherit DbException
Public NotInheritable Class OdbcException
Inherits DbException
Public NotInheritable Class OdbcException
Inherits SystemException
Héritage
Héritage
Attributs

Exemples

L’exemple suivant génère un en OdbcException raison d’une source de données manquante, puis affiche l’exception.

public void ShowOdbcException()
{
   string mySelectQuery = "SELECT column1 FROM table1";
   OdbcConnection myConnection =
      new OdbcConnection("DRIVER={SQL Server};SERVER=MyServer;Trusted_connection=yes;DATABASE=northwind;");
   OdbcCommand myCommand = new OdbcCommand(mySelectQuery,myConnection);
   try
   {
      myCommand.Connection.Open();
   }
   catch (OdbcException e)
   {
     string errorMessages = "";

     for (int i=0; i < e.Errors.Count; i++)
     {
         errorMessages += "Index #" + i + "\n" +
                          "Message: " + e.Errors[i].Message + "\n" +
                          "NativeError: " + e.Errors[i].NativeError.ToString() + "\n" +
                          "Source: " + e.Errors[i].Source + "\n" +
                          "SQL: " + e.Errors[i].SQLState + "\n";
     }

     System.Diagnostics.EventLog log = new System.Diagnostics.EventLog();
     log.Source = "My Application";
     log.WriteEntry(errorMessages);
     Console.WriteLine("An exception occurred. Please contact your system administrator.");
   }
}
Public Sub ShowOdbcException()
    Dim mySelectQuery As String = "SELECT column1 FROM table1"
    Dim myConnection As New OdbcConnection _
       ("DRIVER={SQL Server};SERVER=MyServer;Trusted_connection=yes;DATABASE=northwind;")
    Dim myCommand As New OdbcCommand(mySelectQuery, myConnection)
    Try
        myCommand.Connection.Open()
    Catch e As OdbcException
        Dim errorMessages As String
        Dim i As Integer

        For i = 0 To e.Errors.Count - 1
            errorMessages += "Index #" & i.ToString() & ControlChars.Cr _
                           & "Message: " & e.Errors(i).Message & ControlChars.Cr _
                           & "NativeError: " & e.Errors(i).NativeError.ToString() & ControlChars.Cr _
                           & "Source: " & e.Errors(i).Source & ControlChars.Cr _
                           & "SQL: " & e.Errors(i).SQLState & ControlChars.Cr
        Next i

       Dim log As New System.Diagnostics.EventLog()
       log.Source = "My Application"
       log.WriteEntry(errorMessages)
       Console.WriteLine("An exception occurred. Please contact your system administrator.")
    End Try
End Sub

Remarques

Cette classe est créée chaque fois que le OdbcDataAdapter rencontre une erreur générée par le serveur (les erreurs côté client sont générées en tant qu’exceptions du Common Language Runtime standard). Il contient toujours au moins une instance de OdbcError.

Si la gravité de l'erreur est trop élevée, le serveur peut fermer OdbcConnection. L'utilisateur peut toutefois rouvrir la connexion et continuer.

Pour obtenir des informations générales sur la gestion des exceptions pour un fournisseur de données .NET Framework, consultez SqlException.

Propriétés

BatchCommand

Si cela DbException a été déclenché lors de l’exécution d’un DbBatch, fait référence au spécifique DbBatchCommand qui a déclenché l’exception.

(Hérité de DbException)
Data

Obtient une collection de paires clé/valeur qui fournissent des informations définies par l'utilisateur supplémentaires sur l'exception.

(Hérité de Exception)
DbBatchCommand

En cas de substitution dans une classe dérivée, si cela DbException a été déclenché lors de l’exécution d’un DbBatch, référence le spécifique DbBatchCommand qui a déclenché l’exception.

(Hérité de DbException)
ErrorCode

Obtient le HRESULT de l’erreur.

(Hérité de ExternalException)
Errors

Obtient une collection d'un ou plusieurs objets OdbcError qui donnent des informations détaillées sur les exceptions générées par le fournisseur de données .NET Framework pour ODBC.

HelpLink

Obtient ou définit un lien vers le fichier d'aide associé à cette exception.

(Hérité de Exception)
HResult

Obtient ou définit HRESULT, valeur numérique codée qui est assignée à une exception spécifique.

(Hérité de Exception)
InnerException

Obtient l'instance Exception qui a provoqué l'exception actuelle.

(Hérité de Exception)
IsTransient

Indique si l’erreur représentée par cette exception DbException peut être une erreur temporaire, c’est-à-dire si une nouvelle tentative d’exécution de l’opération de déclenchement peut réussir sans autre modification.

(Hérité de DbException)
Message

Obtient un message qui décrit l'exception active.

Message

Obtient un message qui décrit l'exception active.

(Hérité de Exception)
Source

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

SqlState

Pour les fournisseurs de base de données assurant sa prise en charge, contient un code de retour de caractères SQL 5 standard indiquant la réussite ou l’échec de l’opération de base de données. Les 2 premiers caractères représentent la classe du code de retour (par exemple, erreur, réussite), tandis que les 3 derniers caractères représentent la sous-classe, ce qui permet de détecter les scénarios d’erreur dans une base de données portable.

Pour les fournisseurs de bases de données n’assurant pas sa prise en charge, ou pour les scénarios d’erreur inapplicables, contient null.

(Hérité de DbException)
StackTrace

Obtient une représentation sous forme de chaîne des frames immédiats sur la pile des appels.

(Hérité de Exception)
TargetSite

Obtient la méthode qui lève l'exception actuelle.

(Hérité de Exception)

Méthodes

Equals(Object)

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

(Hérité de Object)
GetBaseException()

En cas de substitution dans une classe dérivée, retourne la Exception qui est à l'origine d'une ou de plusieurs exceptions ultérieures.

(Hérité de Exception)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsolète.

Ce membre se substitue à GetObjectData(SerializationInfo, StreamingContext).

GetType()

Obtient le type au moment de l'exécution de l'instance actuelle.

(Hérité de Exception)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui contient le HRESULT de l'erreur.

(Hérité de ExternalException)
ToString()

Crée et retourne une chaîne représentant l'exception actuelle.

(Hérité de Exception)

Événements

SerializeObjectState
Obsolète.

Se produit quand une exception est sérialisée pour créer un objet d'état d'exception qui contient des données sérialisées concernant l'exception.

(Hérité de Exception)

S’applique à

Voir aussi