SqlDataAdapter クラス

定義

データ コマンドのセットと、DataSet の格納および SQL Server データベースの更新に使用されるデータベース接続を表します。 このクラスは継承できません。

public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter
public ref class SqlDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter
public sealed class SqlDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
type SqlDataAdapter = class
    inherit DbDataAdapter
    interface IDbDataAdapter
    interface IDataAdapter
    interface ICloneable
type SqlDataAdapter = class
    inherit DbDataAdapter
    interface IDataAdapter
    interface IDbDataAdapter
    interface ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Public NotInheritable Class SqlDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
継承
実装

次の例では、 、SqlDataAdapterSqlConnectionSqlCommand使用してデータベースからレコードを選択し、 にDataSet選択した行を設定します。 その後、塗りつぶし DataSet が返されます。 これを実現するために、メソッドには、初期化 DataSetされた 、接続文字列、および Transact-SQL SELECT ステートメントであるクエリ文字列が渡されます。

private static DataSet SelectRows(DataSet dataset,
    string connectionString,string queryString)
{
    using (SqlConnection connection =
        new SqlConnection(connectionString))
    {
        SqlDataAdapter adapter = new SqlDataAdapter();
        adapter.SelectCommand = new SqlCommand(
            queryString, connection);
        adapter.Fill(dataset);
        return dataset;
    }
}
Public Function SelectRows( _
    ByVal dataSet As DataSet, ByVal connectionString As String, _
    ByVal queryString As String) As DataSet

    Using connection As New SqlConnection(connectionString)
        Dim adapter As New SqlDataAdapter()
        adapter.SelectCommand = New SqlCommand( _
            queryString, connection)
        adapter.Fill(dataSet)
        Return dataSet
    End Using
End Function

注釈

SqlDataAdapter、 と SQL Serverの間DataSetのブリッジとして機能し、データの取得と保存を行います。 はSqlDataAdapter、 のデータをデータ ソース内のDataSetデータと一致するように変更する マッピングFillによってこのブリッジを提供しUpdate、 では、データ ソースに対して適切な Transact-SQL ステートメントを使用して、 内のデータと一致するようにデータ ソース内DataSetのデータを変更します。 更新は行ごとに実行されます。 挿入、変更、および削除された行ごとに、 メソッドによって、 Update 行に対して実行された変更の種類 (Insert、、 Updateまたは Delete) が決定されます。 変更の種類に応じて、または Delete コマンド テンプレートがInsertUpdate実行され、変更された行がデータ ソースに反映されます。 が SqlDataAdapterDataSet塗りつぶすと、返されたデータに必要なテーブルと列がまだ存在しない場合は作成されます。 ただし、 プロパティが に設定AddWithKeyされていない限りMissingSchemaAction、暗黙的に作成されたスキーマには主キー情報は含まれません。 また、 を使用してFillSchemaデータをSqlDataAdapter入力する前にDataSet、主キー情報を含む のスキーマを作成することもできます。 詳細については、「 DataSet への既存の制約の追加」を参照してください。

SqlDataAdapterは、 および とSqlConnection組み合わせて使用されSqlCommand、SQL Server データベースに接続するときのパフォーマンスが向上します。

Note

SQL Server のストアド プロシージャで、DataAdapter を使用してデータを編集または削除する場合、ストアド プロシージャの定義に SET NOCOUNT ON は使用しないでください。 処理された行数がゼロとして返され、DataAdapter によってコンカレンシーの競合として解釈されてしまいます。 この場合、DBConcurrencyException がスローされます。

SqlDataAdapterには、、、UpdateCommandDeleteCommand、および TableMappings の各プロパティも含SelectCommandInsertCommandまれており、データの読み込みと更新を容易にします。

SqlDataAdapter インスタンスが作成されると、読み取り/書き込みプロパティは初期値に設定されます。 これらの値の一覧については、 コンストラクターを SqlDataAdapter 参照してください。

InsertCommandDeleteCommand、および UpdateCommand は、パラメーター メカニズムを介して変更されたすべての行の個々の値で自動的に入力されるジェネリック テンプレートです。

のデータ ソースに伝達するすべての列についてUpdate、、、または DeleteCommandにパラメーターをInsertCommandUpdateCommand追加する必要があります。 オブジェクトの プロパティはSourceColumnDbParameter、列の名前に設定する必要があります。 この設定は、パラメーターの値が手動で設定されていないが、現在処理されている行の特定の列から取得されることを示します。

Note

InvalidOperationExceptionは、 メソッドがFill呼び出され、テーブルにクライアント コンピューターで使用できないユーザー定義型が含まれている場合に発生します。 詳細については、「 CLR ユーザー定義型」を参照してください。

コンストラクター

SqlDataAdapter()

SqlDataAdapter クラスの新しいインスタンスを初期化します。

SqlDataAdapter(SqlCommand)

SqlDataAdapter プロパティとして SqlCommand を指定して、SelectCommand クラスの新しいインスタンスを初期化します。

SqlDataAdapter(String, SqlConnection)

SqlDataAdapter オブジェクトと SelectCommand オブジェクトを指定して、SqlConnection クラスの新しいインスタンスを初期化します。

SqlDataAdapter(String, String)

SqlDataAdapter と接続文字列を指定して、SelectCommand クラスの新しいインスタンスを初期化します。

フィールド

DefaultSourceTableName

DataAdapter オブジェクトがテーブル マップに使用する既定の名前。

(継承元 DbDataAdapter)

プロパティ

AcceptChangesDuringFill

Fill 操作中に DataTableDataRow が追加された後で、その行に対して AcceptChanges() を呼び出すかどうかを示す値を取得または設定します。

(継承元 DataAdapter)
AcceptChangesDuringUpdate

AcceptChanges()Update(DataSet) が呼び出されるかどうかを取得または設定します。

(継承元 DataAdapter)
CanRaiseEvents

コンポーネントがイベントを発生させることがきるかどうかを示す値を取得します。

(継承元 Component)
Container

IContainer を含む Component を取得します。

(継承元 Component)
ContinueUpdateOnError

行の更新中にエラーが発生したときに、例外を生成するかどうかを指定する値を取得または設定します。

(継承元 DataAdapter)
DeleteCommand

データ セットからレコードを削除するための Transact-SQL ステートメントまたはストアド プロシージャを取得または設定します。

DesignMode

Component が現在デザイン モードかどうかを示す値を取得します。

(継承元 Component)
Events

Component に結び付けられているイベント ハンドラーのリストを取得します。

(継承元 Component)
FillCommandBehavior

データ アダプターにデータを読み込むコマンドの動作を取得または設定します。

(継承元 DbDataAdapter)
FillLoadOption

アダプターが LoadOption から DataTable にデータを読み込む方法を決定する DbDataReader を取得または設定します。

(継承元 DataAdapter)
InsertCommand

データ ソースに新しいレコードを挿入するための Transact-SQL ステートメントまたはストアド プロシージャを取得または設定します。

MissingMappingAction

一致するテーブルまたは列が受信データに含まれていない場合に実行するアクションを決定します。

(継承元 DataAdapter)
MissingSchemaAction

既存の DataSet スキーマが受信データと一致しないときに実行するアクションを決定します。

(継承元 DataAdapter)
ReturnProviderSpecificTypes

Fill メソッドがプロバイダー固有の値、または共通の CLS 準拠の値のどちらを返すかを取得または設定します。

(継承元 DataAdapter)
SelectCommand

データ ソース内のレコードを選択するための Transact-SQL ステートメントまたはストアド プロシージャを取得または設定します。

Site

ComponentISite を取得または設定します。

(継承元 Component)
TableMappings

ソース テーブルと の間のプライマリ マッピングを提供するコレクションを DataTable取得します。

(継承元 DataAdapter)
UpdateBatchSize

サーバーとの 1 回のラウンドトリップで処理される行数を取得または設定します。

UpdateBatchSize

バッチ処理サポートを有効にするかどうか、および、1 回のバッチで実行可能なコマンド数を指定する値を取得または設定します。

(継承元 DbDataAdapter)
UpdateCommand

データ ソース内のレコードを更新するための Transact-SQL ステートメントまたはストアド プロシージャを取得または設定します。

メソッド

AddToBatch(IDbCommand)

IDbCommand を現在のバッチに追加します。

(継承元 DbDataAdapter)
ClearBatch()

バッチからすべての IDbCommand オブジェクトを削除します。

(継承元 DbDataAdapter)
CloneInternals()
古い.
古い.
古い.
古い.

この DataAdapter のインスタンスのコピーを作成します。

(継承元 DataAdapter)
CreateObjRef(Type)

リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。

(継承元 MarshalByRefObject)
CreateRowUpdatedEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

RowUpdatedEventArgs クラスの新しいインスタンスを初期化します。

(継承元 DbDataAdapter)
CreateRowUpdatingEvent(DataRow, IDbCommand, StatementType, DataTableMapping)

RowUpdatingEventArgs クラスの新しいインスタンスを初期化します。

(継承元 DbDataAdapter)
CreateTableMappings()

新しい DataTableMappingCollection を作成します。

(継承元 DataAdapter)
Dispose()

Component によって使用されているすべてのリソースを解放します。

(継承元 Component)
Dispose(Boolean)

DbDataAdapter によって使用されているアンマネージド リソースを解放し、オプションでマネージド リソースも解放します。

(継承元 DbDataAdapter)
Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
ExecuteBatch()

現在のバッチを実行します。

(継承元 DbDataAdapter)
Fill(DataSet)

DataSet 内の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataSet, Int32, Int32, String)

DataSet 名および DataSet 名を使用して、データ ソース内の行と一致するように、DataTable 内の指定した範囲の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataSet, Int32, Int32, String, IDbCommand, CommandBehavior)

DataSet 名、ソース テーブル名、コマンド文字列、およびコマンド動作を使用して、データ ソース内の列と一致するように、DataSet 内の指定した範囲の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataSet, String)

DataSet 名および DataSet 名を使用して、データ ソース内の列と一致するように DataTable 内の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataSet, String, IDataReader, Int32, Int32)

DataSetDataTableIDataReader の名前を使用して、データ ソース内の行と一致するように、DataSet 内の指定した範囲の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataTable)

DataSet 名を使用して、データ ソース内の行と一致するように、DataTable 内の指定した範囲の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataTable, IDataReader)

指定した DataTableIDataReader の名前を使用して、データ ソース内の行と一致するように、DataTable 内の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataTable, IDbCommand, CommandBehavior)

指定した DataTableDataTable、および IDbCommand を使用して、データ ソース内の行と一致するように、CommandBehavior 内の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(DataTable[], IDataReader, Int32, Int32)

データ ソース内の行と一致するように、DataTable オブジェクトのコレクション内の指定した範囲の行を追加または更新します。

(継承元 DataAdapter)
Fill(DataTable[], Int32, Int32, IDbCommand, CommandBehavior)

DataSet 名および DataSet 名を使用して、データ ソース内の行と一致するように、DataTable 内の指定した範囲の行を追加または更新します。

(継承元 DbDataAdapter)
Fill(Int32, Int32, DataTable[])

1 つ以上 DataTable のオブジェクトの行を追加または更新して、指定したレコードから始まり、指定した最大レコード数まで取得するデータ ソース内の行と一致させます。

(継承元 DbDataAdapter)
FillSchema(DataSet, SchemaType)

"Table" という名前の DataTable を指定された DataSet に追加し、指定された SchemaType に基づいて、データ ソースにあるスキーマと一致するようにスキーマを構成します。

(継承元 DbDataAdapter)
FillSchema(DataSet, SchemaType, IDbCommand, String, CommandBehavior)

指定した DataTableDataSet を追加し、指定した SchemaType に基づいて、データ ソース内のスキーマと一致するようにスキーマを設定します。

(継承元 DbDataAdapter)
FillSchema(DataSet, SchemaType, String)

指定した DataSetDataTable を追加し、指定した SchemaType および DataTable に基づいて、データ ソースにあるスキーマと一致するようにスキーマを構成します。

(継承元 DbDataAdapter)
FillSchema(DataSet, SchemaType, String, IDataReader)

DataTable を指定した DataSet に追加します。

(継承元 DataAdapter)
FillSchema(DataTable, SchemaType)

指定された SchemaType に基づいて、指定された DataTable のスキーマを構成します。

(継承元 DbDataAdapter)
FillSchema(DataTable, SchemaType, IDataReader)

DataTable を指定した DataSet に追加します。

(継承元 DataAdapter)
FillSchema(DataTable, SchemaType, IDbCommand, CommandBehavior)

指定した DataTable、コマンド文字列、および SchemaType 値に基づいて、指定した CommandBehavior のスキーマを設定します。

(継承元 DbDataAdapter)
GetBatchedParameter(Int32, Int32)

現在のバッチのコマンドの 1 つから IDataParameter を返します。

(継承元 DbDataAdapter)
GetBatchedRecordsAffected(Int32, Int32, Exception)

バッチ更新内の、個々の更新の試行に関する情報を返します。

(継承元 DbDataAdapter)
GetFillParameters()

SQL SELECT ステートメントの実行時にユーザーが設定したパラメーターを取得します。

(継承元 DbDataAdapter)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLifetimeService()
古い.

対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
GetService(Type)

Component またはその Container で提供されるサービスを表すオブジェクトを返します。

(継承元 Component)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
HasTableMappings()

DataTableMappingCollection が作成されているかどうかを示します。

(継承元 DataAdapter)
InitializeBatching()

DbDataAdapter のバッチ処理を初期化します。

(継承元 DbDataAdapter)
InitializeLifetimeService()
古い.

このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。

(継承元 MarshalByRefObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
MemberwiseClone(Boolean)

現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。

(継承元 MarshalByRefObject)
OnFillError(FillErrorEventArgs)

FillError イベントを発生させます。

(継承元 DbDataAdapter)
OnRowUpdated(RowUpdatedEventArgs)

.NET データ プロバイダーの RowUpdated イベントを発生させます。

(継承元 DbDataAdapter)
OnRowUpdating(RowUpdatingEventArgs)

.NET データ プロバイダーの RowUpdating イベントを発生させます。

(継承元 DbDataAdapter)
ResetFillLoadOption()

FillLoadOption を既定の状態にリセットし、Fill(DataSet)AcceptChangesDuringFill を受け入れるようにします。

(継承元 DataAdapter)
ShouldSerializeAcceptChangesDuringFill()

AcceptChangesDuringFill プロパティを永続化する必要があるかどうかを判断します。

(継承元 DataAdapter)
ShouldSerializeFillLoadOption()

FillLoadOption プロパティを永続化する必要があるかどうかを判断します。

(継承元 DataAdapter)
ShouldSerializeTableMappings()

1 つ以上の DataTableMapping オブジェクトが存在し、それらを永続化する必要があるかどうかを確認します。

(継承元 DataAdapter)
TerminateBatching()

DbDataAdapter のバッチ処理を終了します。

(継承元 DbDataAdapter)
ToString()

Component の名前 (存在する場合) を格納する String を返します。 このメソッドはオーバーライドできません。

(継承元 Component)
Update(DataRow[])

指定した DataSet 内の配列での挿入行、更新行、または削除行に対して INSERT、UPDATE、または DELETE ステートメントを個別に実行することで、データベースの値を更新します。

(継承元 DbDataAdapter)
Update(DataRow[], DataTableMapping)

指定した DataRow オブジェクトの配列内の挿入行、更新行、または削除行に対して INSERT、UPDATE、または DELETE ステートメントを個別に実行することで、データベースの値を更新します。

(継承元 DbDataAdapter)
Update(DataSet)

指定した DataSet での挿入行、更新行、または削除行に対して INSERT、UPDATE、または DELETE ステートメントを個別に実行することで、データベースの値を更新します。

(継承元 DbDataAdapter)
Update(DataSet, String)

DataSet 内の指定した DataTable 名を持つ挿入行、更新行、または削除行に対して INSERT、UPDATE、または DELETE ステートメントを個別に実行することで、データベースの値を更新します。

(継承元 DbDataAdapter)
Update(DataTable)

指定した DataTable での挿入行、更新行、または削除行に対して INSERT、UPDATE、または DELETE ステートメントを個別に実行することで、データベースの値を更新します。

(継承元 DbDataAdapter)

イベント

Disposed

Dispose() メソッドの呼び出しによってコンポーネントが破棄されるときに発生します。

(継承元 Component)
FillError

格納操作中にエラーが発生したときに返されます。

(継承元 DbDataAdapter)
RowUpdated

Update(DataSet) 処理中に、データ ソースに対してコマンドが実行された後に発生します。 更新が試行されると、このイベントが発生します。

RowUpdating

Update(DataSet) 処理中に、データ ソースに対してコマンドが実行される前に発生します。 更新が試行されると、このイベントが発生します。

明示的なインターフェイスの実装

ICloneable.Clone()

このメンバーの詳細については、「Clone()」をご覧ください。

IDataAdapter.TableMappings

ソース テーブルをデータセット テーブルにマップする方法を示すコレクションを取得します。

(継承元 DataAdapter)
IDbDataAdapter.DeleteCommand

このメンバーの詳細については、「DeleteCommand」をご覧ください。

IDbDataAdapter.InsertCommand

このメンバーの詳細については、「InsertCommand」をご覧ください。

IDbDataAdapter.SelectCommand

このメンバーの詳細については、「SelectCommand」をご覧ください。

IDbDataAdapter.UpdateCommand

このメンバーの詳細については、「UpdateCommand」をご覧ください。

適用対象

こちらもご覧ください