この記事には、Microsoft Office Access データベースのパフォーマンスを向上させるヒントが含まれています。 これらのヒントに従うことで、レポートの実行や複雑なクエリに基づくフォームの開き方など、多くのデータベース操作の高速化に役立ちます。
データベースのパフォーマンスを向上させる最良の方法の 1 つは、一般的に使用されるフィールドのインデックスを作成することです。 インデックスを作成することで、この記事のヒントを使用して、パフォーマンスを向上させることができます。 Access によってインデックスが自動的に作成されますが、追加のインデックスによってパフォーマンスが向上するかどうかを慎重に検討する必要があります。
この記事では、インデックスの作成など、特定のデータベース オブジェクトのパフォーマンスを最適化する方法については説明しません。 詳細については、Create記事を参照し、インデックスを使用してパフォーマンスを向上させます。
この記事の内容
ローカル データベースのパフォーマンス向上に役立つ
次のガイドラインは、ローカル Access データベース (ネットワークではなくローカル ハード ディスク ドライブに格納されているデータベース) のパフォーマンスを最適化するのに役立ちます。
名前オートコレクトをオフにする
名前オートコレクト機能は、依存する他のデータベース オブジェクトの名前が変更されたときに、データベース オブジェクトの機能がそのまま維持されるようにするのに役立ちます。 たとえば、テーブルの名前を変更し、そのテーブルを使用するクエリがある場合、Name AutoCorrect では、変更によってこれらのクエリが破損しないようにします。 この機能は便利ですが、パフォーマンスが低下する場合があります。
データベースの設計が安定していて、そのオブジェクトの名前が変更されない場合は、名前オートコレクトを安全にオフにしてパフォーマンスを向上させることができます。
-
最適化するデータベースを開きます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
[Access のオプション] ダイアログ ボックスの左側のウィンドウで、[現在のデータベース] をクリックします。
-
右側のウィンドウの [オートコレクト オプションの名前] で、すべてのチェック ボックスをオフにします。
データベースをコンパクトに設定し、自動的に修復する
時間の経過とともに、削除されたオブジェクトまたは一時オブジェクトに割り当てられた領域が残っているため、データベース ファイルのパフォーマンスが低下する可能性があります。 Compact and Repair コマンドを使用すると、この無駄な領域が削除され、データベースの実行速度と効率が向上します。 データベースが閉じる と、Compact および Repair コマンドを自動的に実行するオプションを設定できます。
-
最適化するデータベースを開きます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
[Access のオプション] ダイアログ ボックスの左側のウィンドウで、[現在のデータベース] をクリックします。
-
右側のウィンドウの [アプリケーション オプション] で、[閉じる] チェックボックスの [コンパクト] を選択します。
排他モードでデータベースを開く
データベースを使用しているのが唯一のユーザーの場合、 排他的 モードでデータベースを開くと、他のユーザーが同時にデータベースを使用できなくなるので、パフォーマンスの向上に役立ちます。
-
Access を起動します。データベースは開きません。 既にデータベースを開いている場合は、それを閉じます。
-
[ 開く ] をクリックし、[ 参照] をクリックします。
-
[ 開く ] ダイアログ ボックスで、開くデータベース ファイルを選択します。 データベース ファイルを参照して検索する必要がある場合は、[ 検索 先] リストを使用できます。
-
[ 開く ] ボタンの矢印をクリックし、[ 排他を開く] をクリックします。
オートコレクト オプションをオフにする
既定では、入力時にスペルが修正されます。 オートコレクト機能をオフにすると、パフォーマンスを向上させることができます。
-
最適化するデータベースを開きます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
[ アクセス オプション] ダイアログ ボックスの左側のウィンドウで、[ 校正] をクリックします。
-
右側のウィンドウの [ オートコレクト オプション] で、[ オートコレクト オプション] をクリックします。
-
[オートコレクト オプション] ダイアログ ボックスで、不要なオプションのチェック ボックスをオフにします。
注: 特典を表示するためにすべてのオートコレクト オプションをオフにする必要はありませんが、オフにするオートコレクト オプションが多いほど、メリットは大きくなります。
マルチユーザー環境でのパフォーマンスの向上に役立つ
次のガイドラインは、マルチユーザー環境で使用される Access データベースのパフォーマンスを最適化するのに役立ちます。
データベースを分割する
データベースを分割するときは、バックエンド データベースと呼ばれるネットワーク サーバー上のデータベース ファイルにデータ テーブルを配置します。 クエリ、フォーム、レポートなどの他のデータベース オブジェクトを、フロントエンド データベースと呼ばれる別のデータベース ファイルに配置します。 ユーザーは、自分のコンピューターにフロントエンド データベースの独自のコピーを保持します。 データのみがネットワーク経由で送信されるため、パフォーマンスが向上します。
データベース分割ウィザードを使用して、データベースを分割します。
-
[ データベース ツール ] タブの [ データの移動 ] グループで、[Access Database]\( データベースへのアクセス\) をクリックします。
ページ レベルまたはレコード レベルのロック設定を変更する
レコードの編集中に、アクセスによって一定量のデータがロックされます。 ロックされるデータの量は、選択したロック設定によって異なります。 ページ レベルのロックを選択すると、パフォーマンスの向上に役立ちます。 ただし、ページ レベルのロックでは、レコード レベルのロックよりも多くのデータがロックされるため、データの可用性が低下する可能性があります。
-
ページ レベルのロック アクセスは、レコードを含むページをロックします (ページは、レコードが配置されているメモリ領域です)。 ページ レベルのロックが有効になっているレコードを編集すると、メモリ内の近くに格納されている他のレコードもロックされる可能性があります。 ただし、通常、レコード レベルのロックではなくページ レベルのロックを使用すると、パフォーマンスが向上します。
-
レコード レベルのロック アクセスは、編集中のレコードのみをロックします。 その他のレコードは影響を受けません。
ページ レベルまたはレコード レベルのロック設定を変更する
-
調整するデータベースを開きます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
左側のウィンドウで、[ クライアント設定] をクリックします。
-
右側のウィンドウの [詳細設定] セクションで、[レコード レベルのロックチェックを使用してデータベースを開く] ボックスをオンまたはオフにします。
適切なレコード ロック設定を選択する
レコードの編集中にレコードがロックされます。 Access がロックするレコードの数と、それらのレコードがロックされる時間は、選択したレコード ロック設定によって異なります。
-
ロックなし アクセスは、ユーザーが変更を保存するまでレコードまたはページをロックしないため、データをより簡単に使用できるようになります。 ただし、この設定を使用すると、データの競合 (同じレコードに同時に変更が加えられる) が発生する可能性があります。 データ競合が発生した場合、保持するデータのバージョンをユーザーが決定する必要があります。 通常、これは最速のオプションですが、データの競合がパフォーマンスの向上を上回る可能性があります。
-
編集されたレコード アクセスは、ユーザーがレコードの編集を開始するとすぐにレコードをロックします。 その結果、レコードはより長い期間ロックされますが、データ競合の可能性は低くなります。
-
All records テーブルを使用するフォームまたはデータシートが開いている間、テーブル内のすべてのレコードがロックされます。 これにより、テーブル内のデータを編集しているユーザーのパフォーマンスが向上しますが、他のオプションよりも他のユーザーがデータを編集する機能が制限されます。
レコードロック設定を変更する
-
調整するデータベースを開きます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
左側のウィンドウで、[ クライアント設定] をクリックします。
-
右側のウィンドウの [ 詳細設定 ] セクションの [ 既定のレコード ロック] で、目的のオプションをクリックします。
ネットワークの更新と更新の設定を調整する
必要に応じて、 更新間隔 (秒)、 更新再試行間隔 (msec)、 更新の再試行回数、 ODBC 更新間隔 (秒) の設定を調整してみてください。
[更新の再試行間隔] と [更新の再試行回数] 設定を使用して、別のユーザーによってロックされたときに Access がレコードを保存しようとする頻度と回数を指定します。
ODBC の更新間隔と更新間隔の設定を使用して、Access がデータを更新する頻度を制御します。 更新は、データシートまたはフォームに既に存在するデータのみを更新します。 更新しても、レコードの並べ替え、新しいレコードの表示、または指定した条件を満たさなくなったクエリ結果から削除されたレコードとレコードは削除されません。 このような変更を表示するには、データシートまたはフォームの基になるレコードを再クエリします。
ネットワークの更新と更新の設定を変更する
-
実行速度を向上させるデータベースを開きます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
左側のウィンドウで、[ クライアント設定] をクリックします。
-
右側のウィンドウの [ 詳細設定 ] セクションで、目的の設定を変更します。
ヒント: 再クエリを行う場合は、Shift キーを押しながら F9 キーを押します。
コンピューターのアクセス パフォーマンスの向上に役立つ
次のガイドラインは、作業しているデータベースがコンピューターに格納されているか、ネットワーク上に格納されているかに関係なく、Access のパフォーマンスを向上させるのに役立ちます。
ユーザー インターフェイス のアニメーションをオフにする
Access ユーザー インターフェイスには、メニューが開いている場合などのアニメーションが含まれます。 これらのアニメーションはインターフェイスを使いやすくするのに役立ちますが、少し遅くなる可能性があります。 これらをオフにすると、パフォーマンスの向上に役立ちます。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
左側のウィンドウで、[ クライアント設定] をクリックします。
-
右側のウィンドウの [表示] で、[アニメーションチェック表示] ボックスをオフにします。
アクション タグをオフにする
アクション タグを使用しない場合は、パフォーマンスの向上に役立つタグをオフにします。
-
[ファイル]、[オプション] の順にクリックして、[Access のオプション] ダイアログ ボックスを開きます。
-
左側のウィンドウで、[ クライアント設定] をクリックします。
-
右側のウィンドウの [表示] で、[データシートにアクション タグを表示する] ボックスと [Formsとレポートにアクション タグを表示する] チェック ボックスをオフにします。
使用されていない他のプログラムを閉じる
他のプログラムを閉じると、Access で使用できるメモリが増え、ディスクの使用量を最小限に抑え、パフォーマンスが向上します。
注: また、バックグラウンドで実行を続ける一部のプログラムを閉じてから終了することもできます。 そのようなプログラムの通知領域を見てください。 これらのプログラムを終了するときに注意してください, 一部のプログラムは、あなたが期待どおりに機能するためにコンピュータのために必要な場合があるため. 疑問がある場合は、おそらくこれらのプログラムを終了しないでください。
コンピューターに RAM を追加する
コンピューターに RAM を追加すると、大規模なクエリの実行速度が向上し、一度に開くデータベース オブジェクトを増やすことができます。 さらに、RAMはハードディスクドライブ上の仮想メモリよりもはるかに高速です。 RAM を追加すると、ディスク使用量を最小限に抑え、パフォーマンスを向上させることができます。
ハード ディスク ドライブをクリーンアップする
この一連の手順を定期的に実行します。
-
不要になったファイルをコンピューターから削除します。
-
一時インターネット ファイルを削除します。
-
ごみ箱を空にします。
-
データベースに対して Compact 操作と修復操作を実行します。
-
ハード ディスク ドライブの最適化。
不要な Windows サービスを無効にする
たとえば、適切なデスクトップ バックアップ ソリューションがある場合は、システムの復元サービスを無効にすることを検討する必要があります。 使用していない Microsoft Windows サービスを無効にすると、Access により多くの RAM を使用できるようになります。
重要: Windows サービスを無効にする場合は、無効にした内容を追跡して、必要と判断した Windows サービスを簡単に再度有効にすることができます。
仮想メモリの設定を調整する
ほとんどの場合、Windows で使用される既定の仮想メモリ設定が最適に実行されます。 ただし、場合によっては、仮想メモリの設定を調整すると、Access のパフォーマンスが向上する可能性があります。 次の場合は、既定の仮想メモリ設定を調整することを検討してください。
-
現在仮想メモリに使用されているドライブ上に使用可能なディスク領域が不足しており、別のローカル ドライブに使用可能な領域があります。
-
現在のドライブよりも高速な別のローカル ドライブには、使用可能な領域があり、頻繁に使用されていません。
このような場合は、仮想メモリに別のドライブを指定すると、パフォーマンスが向上する可能性があります。
また、仮想メモリのディスク領域を固定量指定すると、パフォーマンスが向上する可能性があります。 コンピューターにインストールされている RAM の量の 1.5 倍の仮想メモリを指定することを検討してください。 たとえば、1,024 MB の RAM がある場合は、仮想メモリに 1,536 MB を指定します。
注: 多くの場合、複数の大規模なアプリケーションを同時に実行する場合は、より多くの仮想メモリを指定できます。
仮想メモリ設定の変更に関するヘルプについては、Windows ヘルプで "仮想メモリの変更" を検索してください。
スクリーン セーバーを使用しない
スクリーン セーバーはメモリを使用し、自動的に起動します。 モニターの設計が改良されているため、モニターを "バーンイン" から保護するためにスクリーン セーバーは不要になりました。 スクリーン セーバーを使用しないことで、パフォーマンスを少し向上させ、コンピューターの実行をよりスムーズに行うことができます。
ヒント: 不正アクセスからコンピューターを保護するためにスクリーン セーバーに依存しないでください。 離れたときにコンピューターを保護するには、Windows ロゴ キーを押しながら L キーを押します。
デスクトップの背景を使用しない
デスクトップの背景を (なし) に設定すると、いくつかの改善が見られます。