- PR -

データベースへ複数列挿入(C#)

1
投稿者投稿内容
なっちゃん
常連さん
会議室デビュー日: 2005/02/11
投稿数: 21
投稿日時: 2005-03-08 08:29
おはようございます。お世話になります。

様々な書き込みを拝見したのですが うまく解決策を発見できません。
(もし、見過ごしていた記事があれば、すみません。)
テーブルへ一度に複数列挿入したいのですがどのように実装すれば良いでしょうか。


とりあえず 今の段階では 挿入したいテーブルのインスタンスを生成し、
各フィールドに更新するデータをセットし

//INSERTコマンド発行
SqlCommandBuilder mySqlCommandBuilder = new SqlCommandBuilder( mySqlAdapter );
mySqlAdapter.InsertCommand = mySqlCommandBuilder.GetInsertCommand();

//トランザクション開始
SqlTransaction trn = DBConnection.BeginTransaction();
mySqlAdapter.InsertCommand.Transaction = trn;
myDataTable.Rows.Add( myDataRow );

//UPDATE
int i =mySqlAdapter.Update( myDataTable );

をデータの数だけ何度も記述しています。
もっとスマートにコーディングする方法があれば、と
思うのですが・・
kanai
ベテラン
会議室デビュー日: 2004/09/13
投稿数: 98
投稿日時: 2005-03-08 09:06
どこからどこまで「何度も記述」しているのか分かりませんが、
提示されたコード全体を行ごとに繰り返しているのであれば、明らかに非効率的です。

1.DataTableに挿入したいDataRowを追加(行数分繰り返し)
2.DataAdapter.InsertCommandを設定(1回だけ)
3.DataAdapter.Update(DataTable)で更新(1回だけ)

ちなみに、複数列挿入→複数行挿入、ですよね?
1

スキルアップ/キャリアアップ(JOB@IT)