Freigeben über


OdbcException Klasse

Definition

Die Ausnahme, die generiert wird, wenn von einer ODBC-Datenquelle eine Warnung oder ein Fehler zurückgegeben wird. Diese Klasse kann nicht vererbt werden.

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
Vererbung
Vererbung
Attribute

Beispiele

Im folgenden Beispiel wird eine OdbcException aufgrund einer fehlenden Datenquelle generiert und dann die Ausnahme angezeigt.

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

Hinweise

Diese Klasse wird immer dann erstellt, wenn ein OdbcDataAdapter vom Server generierter Fehler auftritt (clientseitige Fehler werden als Standardausnahmen der Common Language Runtime ausgelöst.) Sie enthält immer mindestens einen instance von OdbcError.

Wenn die Auswirkungen des Fehlers zu schwerwiegend sind, trennt der Server möglicherweise die OdbcConnection. Die Benutzer können die Verbindung aber erneut öffnen und fortfahren.

Allgemeine Informationen zum Behandeln von Ausnahmen für einen .NET Framework Datenanbieter finden Sie unter SqlException.

Eigenschaften

BatchCommand

Wenn dies DbException beim Ausführen eines DbBatchausgelöst wurde, verweist auf das Spezifische DbBatchCommand , das die Ausnahme ausgelöst hat.

(Geerbt von DbException)
Data

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen zur Ausnahme bereitstellen.

(Geerbt von Exception)
DbBatchCommand

Wenn dies DbException beim Überschreiben in einer abgeleiteten Klasse ausgelöst wurde, verweist DbBatchauf das Spezifische DbBatchCommand , das die Ausnahme ausgelöst hat.

(Geerbt von DbException)
ErrorCode

Ruft das HRESULT des Fehlers ab.

(Geerbt von ExternalException)
Errors

Ruft eine Auflistung von mindestens einem OdbcError-Objekt ab, die detaillierte Informationen über die vom .NET Framework-Datenanbieter für ODBC generierten Ausnahmen enthält.

HelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.

(Geerbt von Exception)
HResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.

(Geerbt von Exception)
InnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.

(Geerbt von Exception)
IsTransient

Gibt an, ob der Fehler, der von dieser DbException dargestellt wird, ein vorübergehender Fehler sein könnte, d. h., ob die Wiederholung des Auslösevorgangs ohne sonstige Änderung erfolgreich sein könnte.

(Geerbt von DbException)
Message

Ruft eine Meldung ab, mit der die aktuelle Ausnahme beschrieben wird.

Message

Ruft eine Meldung ab, mit der die aktuelle Ausnahme beschrieben wird.

(Geerbt von Exception)
Source

Ruft den Namen des ODBC-Treibers ab, der den Fehler generiert hat.

SqlState

Enthält für Datenbankanbieter, die dies unterstützen, einen standardmäßigen SQL 5-Zeichenrückgabecode, der angibt, ob der Datenbankvorgang erfolgreich war oder nicht. Die ersten 2 Zeichen stellen die Klasse des Rückgabecodes (z. B. Fehler, Erfolg) dar, während die letzten 3 Zeichen die Unterklasse darstellen und die Erkennung von Fehlerszenarios auf datenbankportierbare Weise ermöglichen.

Für Datenbankanbieter, die dies nicht unterstützen, oder für nicht anwendbare Fehlerszenarios ist null enthalten.

(Geerbt von DbException)
StackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.

(Geerbt von Exception)
TargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.

(Geerbt von Exception)

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die Grundursache für eine oder mehrere nachfolgende Ausnahmen ist.

(Geerbt von Exception)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetObjectData(SerializationInfo, StreamingContext)
Veraltet.

Dieser Member überschreibt GetObjectData(SerializationInfo, StreamingContext).

GetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.

(Geerbt von Exception)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das HRESULT des Fehlers enthält.

(Geerbt von ExternalException)
ToString()

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.

(Geerbt von Exception)

Ereignisse

SerializeObjectState
Veraltet.

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt mit serialisierten Daten über die Ausnahme zu erstellen.

(Geerbt von Exception)

Gilt für:

Weitere Informationen