【きっかけ】
こんな問い掛けから始まりました。
Access2003で、WindowsXP の 共有フォルダに データMDB を置いて、
ネットワーク上の WindowsXP からリンクテーブルで使用するのに比べて
ネットワーク上の Windows7 から使用すると遅くなる。
問題となり得る範囲が広すぎるので、
切り分けの提案をしてその場を逃れた後、実際に検証をしてみました。
※遅くなるか判断できればよいので、検証環境は細かく書きません。
過去2年分の在庫と実績を再計算するAccess2003のMDBを使用
クエリーとVBAのみでAccess2003以外の機能は使用していません。
【検証環境】
WindowsXPはSP3, Widows7はSP1, すべて x86, MEM:2GB
Office2003 SP3, WindowsUpdateよりすべてのアップデートを適用済みです
ホスト環境を含めてHDDのデフラグも実施しました
【検証結果】
3回の実行時間を計測して平均しました
実機を使った検証結果です。
スタンドアローン実行時間
プログラムMDBとデータMDBを同じPC上に置いてリンクテーブルで使用します
ネットワーク実行時間
データMDBはネットワーク上に有るWindowsXPパソコンの共有フォルダに設置して
リンクテーブルで接続して使用します。
環境について
縦軸:処理にかかった秒数
なし:アンチウィルスソフトを入れない状態
MSE:Microsoft Security Essentialsを導入
KIS:Kingsoft Internet Security 2012 無料版を導入
VB:トレンドマイクロのウィルスバスター・体験版を導入
NAV:ノートンアンチウィルス・体験版を導入
AVG:AVGインターネットセキュリティ2012・無料版を導入
Avast:avast無料版を導入
スタンドアローンではMSEで大きく実行時間に差が有りますが、
データMDBをネットワーク共有フォルダへ置いた場合は差が有りませんでした。
【結論】
クリーン環境で「Access2003がWindows7で遅くなる」という事は無さそうです。
実測環境ではスタンドアローンでMicrosoft Security Essential を使用している
場合のみWindowsXPよりWindows7の方が2倍近く遅いという結果でした。
–【追記 2012.4.18】————————————————————————————
ここまで読んで頂いて有難うございました。
この投稿後にWindows7+Access2003+遅い の3キーワードでアクセスが増えています。
実際に遅くて困っている方が多いという事なのでしょう。技術者?としては気になります。
検証は
クライアント HP dv6200 (Core2Duo, Mem:2GB )
WinXPの共有側 NEC MY28 (Core2Duo E8400, Mem:4GB )
処理はリンクテーブルをクエリとVBAで一気に更新するもので、
実行中画面の表示は有るものの、一覧の画面表示などの処理が有りません。
ご提示頂ける情報が御座いましたら、
コメントへ必ずメールアドレスを記載してご投稿ください。
ご投稿頂いた内容は一切掲載致しません。
※掲載OKな場合は「掲載OK」と入力をお願いします。
可能な限り当方でも検証・追及を行いたいと思います。
–【追記 2012.7.17】————————————————————————————
あまりに迷惑コメントが多いので、コメント投稿を中止に致しました。
ご理解・ご了承ください。