何を今更・・・と言われると身も蓋も無いのですが。
一意のデータベースのテーブルからデータを読み取って、
同一のデータベースの別テーブルにデータを書き込むとし
ます。
A)コネクション(TADOConnection)を一つ生成して
データの読込み及び更新を行う
B)コネクション(TADOConnection)を二つ生成して
便宜上一方を読み込み用、一方を更新用として
行う
ADODataSet.Connection := ADOConnection1;
{--(略)----}
while not ADODataSet.Eof do
begin
{---データ加工処理(略)----}
//Aの場合
ADOConnection1.Execute('INSERT文');
//Bの場合
ADOConnection2.Execute('INSERT文');
end;
何事も無い処理ですが・・・
11万レコードを処理します。
A)の場合 Av.19分38秒
B)の場合 Av. 2分16秒 \(^o^)/
これはある作業中偶然判明したことなのですが、自身
何故Bの場合が早いのか良くわからんのです。
まあ、結果オーライトと言うことで。
|