2016-07-25 10 views
1

実行するだけのクエリがあり、テーブル内のデータを埋める必要がない場合は、その目的のためにデータアダプタを用意する必要がありますか?データアダプタは常に必要ですか?

+2

'SqlCommand'(詳細格納さを呼び出すなどがある' INSERT'、 'UPDATE'、および' DELETE'ステートメントならびに 'ALTER'、' DROP'、および 'CREATE'にとって理想的ですprocまたはデータリーダなどの取得)。あなたが探しているメソッドは 'ExecuteNonQuery'と呼ばれます。 – Igor

+0

はい、INSERTとDELETEクエリを使用する予定です。クエリが実際に実行される場合、SQLはExecuteNonQueryをなぜ書くのですか? –

+2

ドキュメント:[SqlCommand.ExecuteNonQuery](https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executenonquery(v = vs.110).aspx) - '接続に対してTransact-SQL文を実行し、影響を受けた行の数を返します。 ' – Igor

答えて

1

いいえSqlDataAdapterを使用する必要はありません。実際にはDataSetとSQL Serverの間のブリッジです。

代わりにSqlCommand - ExecuteNonQueryを使用できます。

あなたは( 例えば、データベースの構造を照会またはテーブルなどのデータベース オブジェクトを作成)カタログ操作を実行するためには、ExecuteNonQueryを使用することができ、又はによるデータセットを使用して せずにデータベース内のデータを変更しますUPDATE、INSERT、またはDELETEステートメントを実行します。 ExecuteNonQueryは行を返しませんが、パラメータにマップされた出力パラメータまたは 戻り値にはデータが設定されます。

using (SqlConnection conn = new SqlConnection(
      "your connection string")) 
{ 
     using (SqlCommand command = new SqlCommand("your sql", conn) 
     { 
     conn.Open(); 
     command.ExecuteNonQuery(); 
     } 
} 
関連する問題