OdbcDataAdapter クラス

メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。

DataSet へのデータの格納およびデータ ソースの更新に使用される、一連のデータ コマンドおよびデータ ソース接続を表します。このクラスは継承できません。

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

System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Data.Common.DataAdapter
            System.Data.Common.DbDataAdapter
               System.Data.Odbc.OdbcDataAdapter

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

スレッドセーフ

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

解説

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

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

メモ   主キー列を持たないデータ ソースに対して Fill メソッドを呼び出すと、 OdbcDataAdapter は、一意の制約列を主キーに昇格させようとします。この処理中に、 OdbcDataAdapter は、一意の制約列を null を許可しない列としてマークします。この動作は、一意の制約列に null 値が存在しない限り、機能します。null 値が存在する場合、 Fill メソッドは、制約違反で失敗します。このような状況を避けるために、一意の制約列には null 値を許可しないでください。

メモ   ODBC のネイティブ ドライバの制約により、 DbDataAdapter.FillSchema を呼び出すと、 DataTable は 1 つだけ返されます。これは、複数の DataTable オブジェクトを返す必要がある SQL バッチ ステートメントを実行したときも同じです。

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

使用例

[Visual Basic, C#, C++] OdbcCommandOdbcDataAdapter 、および OdbcConnection を使用してレコードを選択し、選択した行を DataSet に格納する例を次に示します。この例では、続いて、データを格納した DataSet を返します。この例では、初期化された DataSet が、SQL SELECT ステートメントおよびデータ ソースへの接続を指定して設定された SelectCommand と共にメソッドに渡されます。

 
Public Function SelectOdbcSrvRows(dataSet As DataSet, connection As String, query As String) As DataSet
    Dim conn As New OdbcConnection(connection)
    Dim adapter As New OdbcDataAdapter()
    adapter.SelectCommand = new OdbcCommand(query, conn)
    adapter.Fill(dataset)
    Return dataset
End Function

[C#] 
public DataSet SelectOdbcSrvRows(DataSet dataset,string connection,string query) 
{
    OdbcConnection conn = new OdbcConnection(connection);
    OdbcDataAdapter adapter = new OdbcDataAdapter();
    adapter.SelectCommand = new OdbcCommand(query, conn);
    adapter.Fill(dataset);
    return dataset;
}


[C++] 
public:
    DataSet* SelectOdbcSrvRows(DataSet* dataset, String* connection, String* query)
    {
        OdbcConnection* conn = new OdbcConnection(connection);
        OdbcDataAdapter* adapter = new OdbcDataAdapter();
        adapter->SelectCommand = new OdbcCommand(query, conn);
        adapter->Fill(dataset);
        return dataset;
    };

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

必要条件

名前空間: System.Data.Odbc

プラットフォーム: 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 内)

参照

OdbcDataAdapter メンバ | System.Data.Odbc 名前空間 | OdbcConnection | OdbcCommand | DataSet | DataTable