4

継承されたアプリケーションで、非常に大きなクエリに取り組んでいます。これは大規模な挿入クエリであり、100 万をはるかに超えるレコードを持つ 4 つのテーブルを使用します。私はむしろこれをSQLサーバーに入れたいと思っていますが、この顧客にはこれを行うためのインフラストラクチャがありません:-)

このクエリは 1 年以上機能しています。ただし、ソース テーブルは増え続けており、先週は恐ろしい「システム リソース不足」エラーが発生しました。残念…!

このクエリを最適化することは可能だと思います。MySQL での作業では、explain-command を使用して、最適化がどこで発生するかを確認します。Access にこれに相当するものはありますか? なかなか見つからない……。

敬具、

ポール

4

1 に答える 1

4

おそらく、Jet ShowPlan はあなたが望むものに最も近いでしょう。レジストリ キーを設定する必要があります。次に、クエリ プラン情報が SHOWPLAN.OUT という名前のテキスト ファイルにダンプされます。詳細については、TechRepublic の次の記事を参照してください: Microsoft Jet の ShowPlan を使用して、より効率的なクエリを作成する

また、パフォーマンス アナライザー ウィザードも試してください。クエリを単独で調べるように依頼することも、そのクエリで使用されるテーブルまたは他のクエリを調べるように依頼することもできます。

最近データベースを圧縮していない場合は、パフォーマンスが向上するかどうかを確認してください。圧縮によってインデックス統計も更新され、エンジンがクエリ プランに対してより適切な決定を下せるようになります。

于 2012-04-11T05:54:03.687 に答える