OdbcException Classe

Definizione

Eccezione generata quando viene restituito un avviso o un errore da un'origine dati ODBC. La classe non può essere ereditata.

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

Esempio

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

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

Commenti

Questa classe viene creata ogni volta che viene OdbcDataAdapter rilevato un errore generato dal server (gli errori lato client vengono generati come eccezioni di Common Language Runtime standard). Contiene sempre almeno un'istanza di OdbcError.

Se il livello di gravità dell'errore è eccessivo, è possibile che l'istanza di OdbcConnection 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 l'oggetto HRESULT dell'errore.

(Ereditato da ExternalException)
Errors

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

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 un messaggio che descrive l'eccezione corrente.

Message

Ottiene un messaggio che descrive l'eccezione corrente.

(Ereditato da Exception)
Source

Ottiene il nome del driver ODBC da cui è stato generato l’errore.

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)

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()

Crea e restituisce una rappresentazione di stringa dell'eccezione corrente.

(Ereditato da Exception)
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