次の方法で共有


OleDbCommand.ExecuteReader メソッド ()

CommandTextConnection に送信し、 OleDbDataReader を構築します。

Overloads Public Function ExecuteReader() As OleDbDataReader
[C#]
public OleDbDataReader ExecuteReader();
[C++]
public: OleDbDataReader* ExecuteReader();
[JScript]
public function ExecuteReader() : OleDbDataReader;

戻り値

OleDbDataReader オブジェクト。

例外

例外の種類 条件
InvalidOperationException 接続を登録した当初のトランザクション コンテキストとは異なるコンテキストでは、コマンドを実行できません。

解説

CommandType プロパティを StoredProcedure に設定したときは、 CommandText プロパティをストアド プロシージャ名に設定する必要があります。 ExecuteReader を呼び出すと、このストアド プロシージャがコマンドによって実行されます。

OleDbDataReader の使用中は、関連付けられた OleDbConnection は、その OleDbDataReader によって使用されるためビジー状態になります。この状態では、 OleDbConnection に対して、閉じる以外の操作を実行できません。 OleDbDataReaderClose メソッドを呼び出すまでこの状態が続きます。

使用例

[Visual Basic, C#, C++] OleDbCommand を作成し、SQL SELECT ステートメントの文字列とデータ ソースへの接続に使用する文字列を渡してこのコマンドを実行する例を次に示します。

 
Public Sub CreateMyOleDbDataReader(mySelectQuery As String, _
myConnectionString As String)
    Dim myConnection As New OleDbConnection(myConnectionString)
    Dim myCommand As New OleDbCommand(mySelectQuery, myConnection)
    myConnection.Open()
    Dim myReader As OleDbDataReader = myCommand.ExecuteReader()
    Try
      While myReader.Read()
          Console.WriteLine(myReader.GetString(0))
      End While
    Finally
      myReader.Close()
      myConnection.Close()
    End Try
 End Sub

[C#] 
public void CreateMyOleDbDataReader(string mySelectQuery,string myConnectionString) 
{
   OleDbConnection myConnection = new OleDbConnection(myConnectionString);
   OleDbCommand myCommand = new OleDbCommand(mySelectQuery, myConnection);
   myConnection.Open();
   OleDbDataReader myReader = myCommand.ExecuteReader();
   try
   {
     while(myReader.Read()) 
     {
        Console.WriteLine(myReader.GetString(0));
     }
   }
   finally
   {
     myReader.Close();
     myConnection.Close();
   }
}

[C++] 
public:
 void CreateMyOleDbDataReader(String* mySelectQuery,String* myConnectionString) 
 {
    OleDbConnection* myConnection = new OleDbConnection(myConnectionString);
    OleDbCommand* myCommand = new OleDbCommand(mySelectQuery, myConnection);
    myConnection->Open();
    OleDbDataReader* myReader = myCommand->ExecuteReader();
    try
    {
      while(myReader->Read()) 
      {
         Console::WriteLine(myReader->GetString(0));
      }
    }
    __finally
    {
      myReader->Close();
      myConnection->Close();
    }
 }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

OleDbCommand クラス | OleDbCommand メンバ | System.Data.OleDb 名前空間 | OleDbCommand.ExecuteReader オーバーロードの一覧