Partager via


OleDbException Classe

Définition

Exception levée lorsque le fournisseur sous-jacent retourne un avertissement ou une erreur pour une source de données OLE DB. Cette classe ne peut pas être héritée.

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

Exemples

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

public void ShowOleDbException()
{
   string mySelectQuery = "SELECT column1 FROM table1";
   OleDbConnection myConnection =
      new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=");
   OleDbCommand myCommand = new OleDbCommand(mySelectQuery,myConnection);

   try
   {
      myCommand.Connection.Open();
   }
   catch (OleDbException 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 + "\n" +
                          "Source: " + e.Errors[i].Source + "\n" +
                          "SQLState: " + 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 ShowOleDbException()
    Dim mySelectQuery As String = "SELECT column1 FROM table1"
    Dim myConnection As New OleDbConnection _
       ("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=")
    Dim myCommand As New OleDbCommand(mySelectQuery, myConnection)

    Try
        myCommand.Connection.Open()
    Catch e As OleDbException
        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 & ControlChars.Cr _
                           & "Source: " & e.Errors(i).Source & ControlChars.Cr _
                           & "SQLState: " & 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 fournisseur de données .NET Framework pour OLE DB rencontre une erreur générée à partir du serveur. (Les erreurs côté client sont levées en tant qu’exceptions de Common Language Runtime standard.) OleDbException contient toujours au moins un instance de OleDbError.

Si la gravité de l'erreur est trop élevée, le serveur peut fermer OleDbConnection. 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é levée 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.

Errors

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

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 le texte décrivant l'erreur.

Message

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

(Hérité de Exception)
Source

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

Source

Obtient ou définit le nom de l'application ou de l'objet qui est à l'origine de l'erreur.

(Hérité de Exception)
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)

É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