こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Access97からAccess2003に移行したときの問題点

VB4→VB6へ、SQLサーバ7→2000へ、Access97→2003へ移行を行っています。
旧システムでは、約5秒で完了する処理が、移行後は、2分51秒かかります。
どのような処理かというと、
 1.SQLサーバのデータをSELECT
 2.AccessのテーブルにINSERT(もしくは、UPDATE)
 3.Accessのクエリ実行
 4.Accessのレポート表示
です。
新旧比較してみたのですが、1.SQLサーバのデータのSelectは、差はありません。
2.AccessのテーブルにInsertでは、
 Access97は、1秒、2003は、45秒です。
Updateとなると、Access97では、4秒、2003は、2分5秒となりました。

新システムの方が、遅くて性能が悪いようです。
どのように、チューニングしたらよいでしょうか?
また、原因等、ご存知でしたら、教えていただけないでしょうか?
よろしくお願いします。

投稿日時 - 2005-11-16 17:26:03

QNo.1782812

困ってます

質問者が選んだベストアンサー

VBから操作する仕様で97でDAOから2003でADOの接続に変更しても極端に処理速度が遅くなるような事は経験がありませんが・・。
VBコードでODBC接続はフォームロードで行う。アクセスの度に接続していてはレスポンスが悪い。
ODBC接続解除はフォームアンロードで行う。
リクエリを使用するレコードセットオープンはVBのフォームロードなど起動時に一度実行される場所で行わないとレスポンスが最悪になる。など。

一度AccessのConversionToolkitのツールを使用してAccessデータベースを分析してみてはどうでしょうか。

参考URL:http://www.microsoft.com/japan/office/ork/2003/journ/accessconvert.htm#top

投稿日時 - 2005-11-17 14:47:15

補足

Accessの接続方式がRDOからADOに変更しました。約2’30”-->約5”になりました。

ありがとうございました。

投稿日時 - 2005-11-24 08:52:25

お礼

ご回答ありがとうございます。
ConversionToolkitのツール、早速分析してみようと思います。
(VBの記述については、見直してみました。しかし、遅くなるような要因を見つけることができませんでした。)

投稿日時 - 2005-11-18 09:11:42

ANo.1

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-