OdbcException Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Wyjątek generowany podczas zwracania ostrzeżenia lub błędu przez źródło danych ODBC. Klasa ta nie może być dziedziczona.
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
- Dziedziczenie
- Dziedziczenie
- Dziedziczenie
- Atrybuty
Przykłady
Poniższy przykład generuje element OdbcException z powodu brakującego źródła danych, a następnie wyświetla wyjątek.
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
Uwagi
Ta klasa jest tworzona za każdym razem, gdy OdbcDataAdapter wystąpi błąd wygenerowany przez serwer (błędy po stronie klienta są zgłaszane jako standardowe wyjątki środowiska uruchomieniowego języka wspólnego). Zawsze zawiera co najmniej jedno wystąpienie klasy OdbcError.
Jeśli ważność błędu jest zbyt duża, serwer może zamknąć serwer OdbcConnection. Użytkownik może jednak ponownie otworzyć połączenie i kontynuować.
Aby uzyskać ogólne informacje na temat obsługi wyjątków dla dostawcy danych .NET Framework, zobacz SqlException.
Właściwości
BatchCommand |
Jeśli zostało to DbException zwrócone podczas wykonywania elementu DbBatch, odwołuje się do określonego DbBatchCommand elementu, który wyzwolił wyjątek. (Odziedziczone po DbException) |
Data |
Pobiera kolekcję par klucz/wartość, które zapewniają dodatkowe informacje zdefiniowane przez użytkownika dotyczące wyjątku. (Odziedziczone po Exception) |
DbBatchCommand |
Po przesłonięciu w klasie pochodnej, jeśli został on DbException zgłoszony podczas wykonywania DbBatchklasy , odwołuje się do określonego DbBatchCommand , który wyzwolił wyjątek. (Odziedziczone po DbException) |
ErrorCode |
|
Errors |
Pobiera kolekcję jednego lub większej liczby OdbcError obiektów, które zawierają szczegółowe informacje o wyjątkach generowanych przez dostawcę danych .NET Framework dla ODBC. |
HelpLink |
Pobiera lub ustawia link do pliku pomocy skojarzonego z tym wyjątkiem. (Odziedziczone po Exception) |
HResult |
Pobiera lub ustawia HRESULT, zakodowaną wartość liczbową przypisaną do określonego wyjątku. (Odziedziczone po Exception) |
InnerException |
Exception Pobiera wystąpienie, które spowodowało bieżący wyjątek. (Odziedziczone po Exception) |
IsTransient |
Wskazuje, czy błąd reprezentowany przez ten DbException błąd może być błędem przejściowym, tj. jeśli ponowienie próby operacji wyzwalania może zakończyć się powodzeniem bez żadnych innych zmian. (Odziedziczone po DbException) |
Message |
Pobiera komunikat opisujący bieżący wyjątek. |
Message |
Pobiera komunikat opisujący bieżący wyjątek. (Odziedziczone po Exception) |
Source |
Pobiera nazwę sterownika ODBC, który wygenerował błąd. |
SqlState |
W przypadku dostawców baz danych, którzy ją obsługują, zawiera standardowy kod powrotny SQL 5 znaków wskazujący powodzenie lub niepowodzenie operacji bazy danych. Pierwsze 2 znaki reprezentują klasę kodu powrotnego (np. błąd, powodzenie), podczas gdy ostatnie 3 znaki reprezentują podklasę, umożliwiając wykrywanie scenariuszy błędów w przenośnej bazie danych. W przypadku dostawców baz danych, którzy jej nie obsługują, lub w przypadku scenariuszy błędów, których nie można zastosować, zawiera wartość |
StackTrace |
Pobiera reprezentację ciągu natychmiastowych ramek na stosie wywołań. (Odziedziczone po Exception) |
TargetSite |
Pobiera metodę, która zgłasza bieżący wyjątek. (Odziedziczone po Exception) |
Metody
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetBaseException() |
Po przesłonięciu w klasie pochodnej funkcja zwraca Exception główną przyczynę co najmniej jednego kolejnego wyjątku. (Odziedziczone po Exception) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetObjectData(SerializationInfo, StreamingContext) |
Przestarzałe.
Ten element członkowski przesłania element GetObjectData(SerializationInfo, StreamingContext). |
GetType() |
Pobiera typ środowiska uruchomieniowego bieżącego wystąpienia. (Odziedziczone po Exception) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Tworzy i zwraca reprezentację ciągu bieżącego wyjątku. (Odziedziczone po Exception) |
ToString() |
Zwraca ciąg zawierający wartość HRESULT błędu. (Odziedziczone po ExternalException) |
Zdarzenia
SerializeObjectState |
Przestarzałe.
Występuje, gdy wyjątek jest serializowany w celu utworzenia obiektu stanu wyjątku, który zawiera serializowane dane dotyczące wyjątku. (Odziedziczone po Exception) |