OdbcException Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
[System.Serializable]
public sealed class OdbcException : System.Data.Common.DbException
[System.Serializable]
public sealed class OdbcException : SystemException
public sealed class OdbcException : System.Data.Common.DbException
[<System.Serializable>]
type OdbcException = class
inherit DbException
[<System.Serializable>]
type OdbcException = class
inherit SystemException
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 |
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 |
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) |