OleDbException Classe

Definizione

Eccezione generata quando il provider sottostante restituisce un avviso o un errore per un'origine dati OLE DB. La classe non può essere ereditata.

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
Ereditarietà
Ereditarietà
Attributi

Esempio

Nell'esempio seguente viene generato un OleDbException oggetto a causa di un'origine dati mancante e quindi viene visualizzata l'eccezione.

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

Commenti

Questa classe viene creata ogni volta che il provider di dati .NET Framework per OLE DB rileva un errore generato dal server. Gli errori lato client vengono generati come eccezioni di Common Language Runtime standard. OleDbException contiene sempre almeno un'istanza di OleDbError.

Se il livello di gravità dell'errore è eccessivo, è possibile che l'istanza di OleDbConnection venga chiusa dal server. L'utente può tuttavia riaprire la connessione e continuare.

Per informazioni generali sulla gestione delle eccezioni per un provider di dati .NET Framework, vedere SqlException.

Proprietà

BatchCommand

Se viene DbException generata durante l'esecuzione di un DbBatchoggetto , fa riferimento all'eccezione specifica DbBatchCommand che ha attivato l'eccezione.

(Ereditato da DbException)
Data

Ottiene una raccolta di coppie chiave/valore che forniscono informazioni definite dall'utente aggiuntive sull'eccezione.

(Ereditato da Exception)
DbBatchCommand

Quando viene eseguito l'override in una classe derivata, se viene DbException generata durante l'esecuzione di un DbBatchoggetto , fa riferimento all'eccezione specifica DbBatchCommand che ha attivato l'eccezione.

(Ereditato da DbException)
ErrorCode

Ottiene il valore HRESULT dell'errore.

Errors

Ottiene un insieme di uno o più oggetti OleDbError che contengono informazioni dettagliate relative alle eccezioni generate dal provider di dati .NET Framework di OLE DB.

HelpLink

Ottiene o imposta un collegamento al file della Guida associato all'eccezione.

(Ereditato da Exception)
HResult

Ottiene o imposta HRESULT, un valore numerico codificato che viene assegnato a un'eccezione specifica.

(Ereditato da Exception)
InnerException

Ottiene l'istanza di Exception che ha causato l'eccezione corrente.

(Ereditato da Exception)
IsTransient

Indica se l'errore rappresentato da DbException potrebbe essere un errore temporaneo, ad esempio se il tentativo di eseguire l'operazione di attivazione può avere esito positivo senza apportare modifiche.

(Ereditato da DbException)
Message

Ottiene il testo che descrive l'errore.

Message

Ottiene un messaggio che descrive l'eccezione corrente.

(Ereditato da Exception)
Source

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

Source

Ottiene o imposta il nome dell'oggetto o dell'applicazione che ha generato l'errore.

(Ereditato da Exception)
SqlState

Per i provider di database che la supportano, contiene un codice restituito SQL standard di 5 caratteri che indica l'esito positivo o negativo dell'operazione sul database. I primi 2 caratteri rappresentano la classe del codice restituito, ad esempio errore, esito positivo, mentre gli ultimi 3 caratteri rappresentano la sottoclasse , che consentono il rilevamento degli scenari di errore in una modalità portabile da database.

Per i provider di database che non la supportano o per gli scenari di errore non applicabili, contiene null.

(Ereditato da DbException)
StackTrace

Ottiene una rappresentazione di stringa dei frame immediati nello stack di chiamate.

(Ereditato da Exception)
TargetSite

Ottiene il metodo che genera l'eccezione corrente.

(Ereditato da Exception)

Metodi

Equals(Object)

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

(Ereditato da Object)
GetBaseException()

Quando ne viene eseguito l'override in una classe derivata, restituisce l'Exception che è la causa radice di una o più eccezioni successive.

(Ereditato da Exception)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetObjectData(SerializationInfo, StreamingContext)
Obsoleti.

Questo membro esegue l'override del metodo GetObjectData(SerializationInfo, StreamingContext).

GetType()

Ottiene il tipo di runtime dell'istanza corrente.

(Ereditato da Exception)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa contenente il valore HRESULT dell'errore.

(Ereditato da ExternalException)

Eventi

SerializeObjectState
Obsoleti.

Si verifica quando un'eccezione viene serializzata per creare un oggetto di stato eccezione contenente i dati serializzati relativi all'eccezione.

(Ereditato da Exception)

Si applica a

Vedi anche