Date: Tue, 04 Feb 2003 16:19:06 +0900
From: Yoshihiro Kawashima <who@example.co.jp>
まじめまして川島と言います。
MSDE for Visual Studio6.0にて
50個のフィールドがあるテーブルを作成して
1000件〜10000件のINSERTとDELETEの速度を計っていたのですが
コーディングの仕方が悪いのか?あまり早く無いので
MSDEの設定方法を探しています。
VBのADOからMSDEに接続して
Set adoCn = CreateObject("ADODB.Connection")
ConnectionのExecuteで
追加だと
for llp=1 to 10000
adoCn.Execute "INSERT INTO TEST VALUES('1','1',.......'1' )"
next llp
削除だと
for llp=1 to 10000
adoCn.Execute "DELETE FROM TEST WHERE A01='1' AND A02='1'"
next llp
と言う感じでやっています。
#10000件なら10000回のループ処理で、値だけループカウンタで変化します。
10000件ですとINSERTで約50秒、DELETEで約40秒かかってます。
#それともこれくらいの時間は妥当なのでしょうか?
Connectionの時にBeginTransを設定するとそれぞれ約8〜10秒くらいは
早くなる感じではありますが、まだまだ早くなった!って感じではないのです。
マシンスペック
メモリ:128M
CPU :Pentium3 800MHz
また、MSDEは単にインストールしただけの状態です。
この設定をこうしたらもう少し早くなるのでは?という
なにか方法があれば教えてください。
また、MSDEのosqlにて
DELETE FROM TEST とやると10000件削除するのに30秒くらい
かかってしまうのですが、SQL Server 2000で同じことをやると
1〜2秒で終わってしまうのですが、これは何か処理が違うのでしょうか?
SQL Server2000は予めそういうチューニングがされている?
MSDEでも同じようなことは可能なのでしょうか?
以上、よろしくお願いします。
[MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
よろしければお困りの内容を、電子メールで教えて下さい。 |
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|