2

Microsoft Access データベース (accdb ファイル) に大量のデータ (テーブルあたり約 500MB) を挿入する必要があります。
私のソフトAはネットからテーブルをダウンロードし、テーブルからのデータを持つ DataTable オブジェクトを持っていますA。(ADO.NET プロバイダー) を使用して行ごとにデータを挿入するOleDbCommandと、時間がかかります。さらに、データベース内のレコードが多いほど、挿入に時間がかかります。

データをより速く挿入する代替手段はありますか (コマンドごとにすべてのデータテーブル)? 行を挿入する前に、宛先データベースに行が含まれている可能性があります。

よろしく、ヤコブ。

4

1 に答える 1

1

一括挿入を実行するには、これを試してください。詳細 : INSERT INTO ステートメント (Microsoft Access SQL)

var cmdText = "INSERT INTO Table1 SELECT * FROM Table2";
var command = new OleDbCommand(cmdText, connection);
command.ExecuteNonQuery();

または、この記事をご覧ください。

注:上記のコードは、あるaccdbから別のaccdbへの一括挿入を実行します。ただし、Dataset から Access DB への一括挿入メソッドはありません。行ごとにデータを挿入する必要があります。

于 2013-07-22T09:20:55.677 に答える