OleDbDataAdapter クラス

DataSet へのデータの格納およびデータ ソースの更新に使用される、一連のデータ コマンドおよびデータベース接続を表します。

この型のすべてのメンバの一覧については、OleDbDataAdapter メンバ を参照してください。

System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Data.Common.DataAdapter
            System.Data.Common.DbDataAdapter
               System.Data.OleDb.OleDbDataAdapter

NotInheritable Public Class OleDbDataAdapter
   Inherits DbDataAdapter
   Implements IDbDataAdapter
[C#]
public sealed class OleDbDataAdapter : DbDataAdapter,
   IDbDataAdapter
[C++]
public __gc __sealed class OleDbDataAdapter : public DbDataAdapter,
   IDbDataAdapter
[JScript]
public class OleDbDataAdapter extends DbDataAdapter implements
   IDbDataAdapter

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

OleDbDataAdapter は、 DataSet とデータ ソースの間でデータを取得および保存するための、ブリッジの役割を果たします。 OleDbDataAdapter は、このブリッジを提供するために、データ ソース内のデータを DataSet に読み込む Fill 、および DataSet での変更をデータ ソースに送り返す Update を使用します。

OleDbDataAdapter は、 DataSet にデータを読み込むときに、返されたデータを格納するテーブルおよび列が存在しない場合は、それらを作成します。ただし、 MissingSchemaAction プロパティを AddWithKey に設定しない限り、暗黙的に作成されたスキーマには主キー情報は設定されません。 DataSet にデータを格納する前に、 FillSchema を使用して、主キー情報を含むスキーマを OleDbDataAdapter に作成させることもできます。詳細については、「 DataSet への既存の制約の追加 」を参照してください。

MSDataShape プロバイダなど、OLE DB プロバイダによっては、ベース テーブルまたは主キー情報が返されないことに注意してください。これらの情報が返されないと、 OleDbDataAdapter は、作成した DataTablePrimaryKey プロパティを正しく設定できません。この場合は、 DataSet 内のテーブルの主キーを明示的に指定する必要があります。

OleDbDataAdapter には、データの読み込みと更新を効率的に行うために、 SelectCommandInsertCommandDeleteCommandUpdateCommandTableMappings の各プロパティも用意されています。

OleDbDataAdapter のインスタンスを作成すると、プロパティが初期値に設定されます。これらの初期値の一覧については、 OleDbDataAdapter コンストラクタのトピックを参照してください。

使用例

[Visual Basic, C#, C++] OleDbCommandOleDbDataAdapter 、および OleDbConnection を使用して、Access データ ソースからレコードを選択し、選択した行を DataSet に格納する例を次に示します。この例では、続いて、データを格納した DataSet を返します。このメソッドには、初期化済みの DataSet 、接続文字列、および SQL SELECT ステートメントのクエリ文字列が渡されます。

 
Public Function SelectOleDbSrvRows(dataSet As DataSet, connection As String, query As String) As DataSet
    Dim conn As New OleDbConnection(connection)
    Dim adapter As New OleDbDataAdapter()
    adapter.SelectCommand = new OleDbCommand(query, conn)
    adapter.Fill(dataset)
    Return dataset
End Function

[C#] 
public DataSet SelectOleDbSrvRows(DataSet dataset,string connection,string query) 
{
    OleDbConnection conn = new OleDbConnection(connection);
    OleDbDataAdapter adapter = new OleDbDataAdapter();
    adapter.SelectCommand = new OleDbCommand(query, conn);
    adapter.Fill(dataset);
    return dataset;
}


[C++] 
public:
DataSet* SelectOleDbSrvRows(DataSet* dataset,String* connection,String* query) 
{
    OleDbConnection* conn = new OleDbConnection(connection);
    OleDbDataAdapter* adapter = new OleDbDataAdapter();
    adapter->SelectCommand = new OleDbCommand(query, conn);
    adapter->Fill(dataset);
    return dataset;
}

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

必要条件

名前空間: System.Data.OleDb

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

アセンブリ: System.Data (System.Data.dll 内)

参照

OleDbDataAdapter メンバ | System.Data.OleDb 名前空間 | OleDbConnection | OleDbCommand | DataSet | DataTable