Udostępnij za pośrednictwem


OleDbException Klasa

Definicja

Wyjątek zgłaszany, gdy dostawca bazowy zwraca ostrzeżenie lub błąd źródła danych OLE DB. Klasa ta nie może być dziedziczona.

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
Dziedziczenie
Dziedziczenie
Atrybuty

Przykłady

Poniższy przykład generuje element OleDbException z powodu braku źródła danych, a następnie wyświetla wyjątek.

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

Uwagi

Ta klasa jest tworzona za każdym razem, gdy dostawca danych .NET Framework dla OLE DB napotka błąd wygenerowany na serwerze. (Błędy po stronie klienta są zgłaszane jako standardowe wyjątki środowiska uruchomieniowego języka wspólnego). OleDbException zawsze zawiera co najmniej jedno wystąpienie elementu OleDbError.

Jeśli ważność błędu jest zbyt duża, serwer może zamknąć plik OleDbConnection. Jednak użytkownik może ponownie otworzyć połączenie i kontynuować.

Aby uzyskać ogólne informacje o obsłudze wyjątków dla dostawcy danych .NET Framework, zobacz SqlException.

Właściwości

BatchCommand

Jeśli ten DbException błąd został zgłoszony podczas wykonywania elementu DbBatch, odwołuje się do określonego elementu DbBatchCommand , 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 DbBatchelementu , odwołuje się do określonego, DbBatchCommand który wyzwolił wyjątek.

(Odziedziczone po DbException)
ErrorCode

Pobiera element HRESULT błędu.

Errors

Pobiera kolekcję jednego lub większej liczby OleDbError obiektów, które zawierają szczegółowe informacje o wyjątkach generowanych przez dostawcę danych .NET Framework dla OLE DB.

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. w przypadku ponawiania próby wykonania operacji wyzwalania może zakończyć się powodzeniem bez żadnej innej zmiany.

(Odziedziczone po DbException)
Message

Pobiera tekst opisujący błąd.

Message

Pobiera komunikat opisujący bieżący wyjątek.

(Odziedziczone po Exception)
Source

Pobiera nazwę dostawcy OLE DB, który wygenerował błąd.

Source

Pobiera lub ustawia nazwę aplikacji lub obiektu, który powoduje błąd.

(Odziedziczone po Exception)
SqlState

W przypadku dostawców baz danych, którzy go 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 sposób przenośny bazy danych.

W przypadku dostawców baz danych, którzy go nie obsługują, lub w scenariuszach błędów, których nie można zastosować, zawiera element null.

(Odziedziczone po DbException)
StackTrace

Pobiera reprezentację ciągu natychmiastowych ramek w 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()

W przypadku zastąpienia w klasie pochodnej 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()

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 zawierającego serializowane dane o wyjątku.

(Odziedziczone po Exception)

Dotyczy

Zobacz też