OleDbException クラス

定義

基になるプロバイダーが OLE DB データ ソースに関する警告またはエラーを返したときにスローされる例外。The exception that is thrown when the underlying provider returns a warning or error for an OLE DB data source. このクラスは継承できません。This class cannot be inherited.

public ref class OleDbException sealed : System::Data::Common::DbException
[System.Serializable]
public sealed class OleDbException : System.Data.Common.DbException
type OleDbException = class
    inherit DbException
Public NotInheritable Class OleDbException
Inherits DbException
継承
属性

次の例では、データソースが不足しているため OleDbException が生成され、例外が表示されます。The following example generates an OleDbException because of a missing data source, and then displays the exception.

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

注釈

このクラスは、OLE DB の .NET Framework Data Provider がサーバーから生成されたエラーを検出するたびに作成されます。This class is created whenever the .NET Framework Data Provider for OLE DB encounters an error generated from the server. (クライアント側のエラーは、標準の共通言語ランタイム例外としてスローされます)。OleDbException には、常に OleDbErrorのインスタンスが少なくとも1つ含まれています。(Client side errors are thrown as standard common language runtime exceptions.) OleDbException always contains at least one instance of OleDbError.

エラーの重大度レベルが高すぎる場合、サーバーは OleDbConnection を閉じることがあります。If the severity of the error is too great, the server may close the OleDbConnection. ただし、ユーザーは接続を再び開き、続行できます。However, the user can reopen the connection and continue.

.NET Framework データプロバイダーの例外の処理に関する一般的な情報については、「SqlException」を参照してください。For general information about handling exceptions for a .NET Framework data provider, see SqlException.

プロパティ

Data

例外に関する追加のユーザー定義情報を提供する、キー/値ペアのコレクションを取得します。Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(継承元 Exception)
ErrorCode

エラーの HRESULT を取得します。Gets the HRESULT of the error.

Errors

.NET Framework OLE DB 用データ プロバイダーが生成する例外の詳細情報を提供する、1 つ以上の OleDbError オブジェクトのコレクションを取得します。Gets a collection of one or more OleDbError objects that give detailed information about exceptions generated by the .NET Framework Data Provider for OLE DB.

HelpLink

この例外に関連付けられているヘルプ ファイルへのリンクを取得または設定します。Gets or sets a link to the help file associated with this exception.

(継承元 Exception)
HResult

特定の例外に割り当てられているコード化数値である HRESULT を取得または設定します。Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(継承元 Exception)
InnerException

現在の例外の原因となる Exception インスタンスを取得します。Gets the Exception instance that caused the current exception.

(継承元 Exception)
Message

エラーを説明するテキストを取得します。Gets the text describing the error.

Source

エラーを生成した OLE DB プロバイダーの名前を取得します。Gets the name of the OLE DB provider that generated the error.

StackTrace

呼び出し履歴で直前のフレームの文字列形式を取得します。Gets a string representation of the immediate frames on the call stack.

(継承元 Exception)
TargetSite

現在の例外がスローされたメソッドを取得します。Gets the method that throws the current exception.

(継承元 Exception)

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判定します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetBaseException()

派生クラスでオーバーライドされた場合、それ以後に発生する 1 つ以上の例外の根本原因である Exception を返します。When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(継承元 Exception)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetObjectData(SerializationInfo, StreamingContext)

このメンバーは GetObjectData(SerializationInfo, StreamingContext) をオーバーライドします。This member overrides GetObjectData(SerializationInfo, StreamingContext).

GetType()

現在のインスタンスのランタイム型を取得します。Gets the runtime type of the current instance.

(継承元 Exception)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

エラーの HRESULT が格納された文字列を返します。Returns a string that contains the HRESULT of the error.

(継承元 ExternalException)

イベント

SerializeObjectState

例外がシリアル化され、例外に関するシリアル化されたデータを含む例外状態オブジェクトが作成されたときに発生します。Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(継承元 Exception)

適用対象

こちらもご覧ください