Acc 2000: クライアント/サーバーのパフォーマンスを最適化します。

文書翻訳 文書翻訳
文書番号: 208858
詳細: エキスパート コーディング、相互運用性、およびマルチ ユーザーを必要します。スキル。

この資料は Microsoft Access データベース (.mdb) にのみ適用します。

すべて展開する | すべて折りたたむ

目次

概要

開いているのパフォーマンスを最適化するためのヒントを掲載します。データベース接続 (ODBC) データ ソースにします。

メモ: この資料で、クライアント/サーバー型の精通していることを想定しています。環境およびアーキテクチャ。

詳細

データにアクセスする方法

クライアント/サーバー アプリケーションとサーバーのデータにアクセスするには、1 つまたは複数、次の方法の使用します。

  • リンクしたテーブルとビュー
  • 直接に SQL ステートメントを送信するパススルー クエリを SQLサーバー
  • Access プロジェクト

リンク先のテーブルとビュー

テーブルへのリンク サーバーのデータを処理するために、最も効率的な方法です。サーバーからのビューMicrosoft Access フィールドおよびインデックス情報を格納します。リンク テーブルをします。開いたら、これによってパフォーマンスを向上、テーブル。

メモ: フィールドや、サーバー上のインデックスに変更を加える場合は、行う必要があります。リモート ・ テーブルの再リンクしてください。

SQL のパススルー クエリを実行します。

多くのアプリケーションでは、Microsoft Access クエリを作成することができます。リモート テーブルに基づくし、も SQL のパススルー クエリを作成します。パススルークエリは次の利点があります。
  • Microsoft Access はパススルー クエリをコンパイルしません。そのクエリに直接 ODBC サーバーに送信されます。アプリケーションの速度が向上します。
  • パススルー クエリ アクセスを厳密に、サーバーに送信します入力されていません。サーバー上で、したがってより多くの処理が発生しますネットワーク経由でデータを交換します。
  • フォーム、レポート、および Microsoft Access クエリに基づくことができます。パススルー クエリの ODBC を使用してテーブルをリンクします。
  • (ような SQL Server に固有の機能を使用できます。プロシージャとサーバー固有の機能を格納する) に相当するものがありませんコードでは。
  • 更新、削除、およびクエリは、パススルーのアクションを追加します。リンクのリモート テーブルに基づくアクション クエリよりもはるかに高速化するときに特に多数のレコードを受けます。
パススルー クエリは、次のような欠点があります。
  • SQL は、パススルー クエリは常にスナップショットを返す更新することはできません。Microsoft Access クエリは、通常、ダイナセットを返す他のユーザーの変更を反映し、更新することができます。
  • コマンドに直接入力する必要が、パススルー クエリの SQL ウィンドウ サーバーに必要な構文です。、パススルー クエリをクエリ デザイン グリッドを設計することはできません。
  • パススルー クエリは、パラメーターを必要とする場合は、コード内でクエリを実行して、クエリの変更 SQL [プロパティ] します。詳細についてはSQL プロパティを変更する方法の例として、「クリックして以下の「サポート技術情報」資料を参照するには。
    232493 Acc 2000: SQL パススルー クエリでパラメーターをシミュレートする方法

サーバーからデータを要求します。

処理時間、サーバーのコストからのデータを要求します。するにはパフォーマンスの最適化、必要なフィールドとレコードだけを要求します。

テキスト ボックスなどのバインドされているコントロールの数を減らすコンボボックス、リスト ボックスとサブフォームを使用します。フォームが開いたとき、これらの各コントロール別のクエリ サーバーに送信します。

ODBC のリンク テーブルがある場合メモ型または OLE オブジェクト型のフィールドを設定できます、 表示 フィールドのプロパティ いいえ 設定するのには、トグル ボタンを追加し、 表示 プロパティ [はい] ユーザーが表示することができますように。

一部のリンクテーブルが頻繁に変更しないでください。名前を格納するテーブルなど、多くの場合、50 の州の省略形は変化しません。フォームを高速化読み込みとこれらのテーブルのローカル コピーを格納することによって、サーバーの負荷を軽減します。行うことができます。また、最新のデータをローカル コピーを更新する方法を提供、サーバーです。

クエリを最適化します。

プリンシパル (を追加した後、クエリを最適化する方法適切なインデックス サーバーでの処理が行われることを確認することですサーバーです。サーバーによってサポートされていない機能を回避する必要があります、Microsoft Access またはユーザー定義関数に固有関数など。のどのようなローカルで処理する必要がありますの詳細については、Microsoft を参照してください。Jet データベース エンジン ODBC 接続ホワイト ペーパーの詳細についてこのホワイト ペーパーは、「Microsoft Jet データベース エンジン ODBC 接続を参照してください。白書」セクションこの資料後半)。

選択を確認するにはサーバーに送信されているステートメントを TraceSQLMode を設定できます。設定します。これを設定するには、次の手順を実行します。
  1. クリックしてください。 開始 メニューのとクリック 実行.
  2. で、 ファイルを開く ダイアログ ボックス、入力 レジストリ エディター.
  3. 検索するまでは、HKEY_LOCAL_MACHINE サブツリーを展開、SOFTWARE\Microsoft\Jet\4.0\Engines サブキーします。
  4. クリックしてください。 エンジン.
  5. 場合は、 TraceSQLMode 右側のウィンドウで、値がない] をクリックします。 新しい で、 編集 メニューのとクリック DWORD 値.
  6. 右側のウィンドウで名] を入力します。TraceSQLMode 新しい値。
  7. 新しい値に、選択したままをクリックします。 変更 で、 編集 メニューです。
  8. 下にあります。 ベースを選択 10 進数.で、 [値のデータ ボックスの種類 1、し [OK].
TraceSQLMode の設定の詳細についてをクリックします。オフィスに入力「TraceSQLMode」Microsoft Access ヘルプ ヘルプ メニューのアシスタントまたは、アンサー ウィザードし検索トピックを表示します。

TryJetAuth の設定

は、 TryJetAuth まず、Microsoft Access はログオンしようかどうかの設定の制御Microsoft Access ログイン ID とパスワードを使用して、サーバーにします。(で既定では、Microsoft Access ログイン ID は"admin"で、パスワードは空白になります。)これが失敗した場合は、ログオン ID とパスワードが表示します。しない限り、同じログオン ID とパスワードを使用して Microsoft Access セットアップを設定した、ODBC サーバーは、行を追加"TryJetAuth = 0"をキーを HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\ODBC\TryJetAuth、レジストリに。これにログオンしようとしているから Microsoft Access を防止、不適切な id。これを行うには、次の手順を実行します。
  1. クリックしてください。 開始、し 実行.
  2. で、 ファイルを開く ダイアログ ボックス、入力 レジストリ エディター.
  3. HKEY_LOCAL_MACHINE サブツリーを見つけます。
  4. 検索するまでは、HKEY_LOCAL_MACHINE サブツリーを展開、次のサブキー。
    SOFTWARE\Microsoft\Jet\4.0\ODBC\TryJetAuth
  5. クリックしてください。 エンジン.
  6. 場合は、 TryJetAuth 値がなく、クリックします。 新しい で、 編集 メニューのとクリック DWORD 値.
  7. 右側のウィンドウで名] を入力します。TryJetAuth 新しい値。
  8. 新しい値に、選択したままをクリックします。 変更 で、 編集 メニューです。
  9. 下にあります。 ベースを選択 10 進数.で、 [値のデータ ボックスの種類 1、し [OK].

タイムスタンプ

それは Microsoft SQL Server などをサポートしているサーバーでは、タイム スタンプ フィールド更新中のレコードをより効率的にします。タイムスタンプ フィールドです。サーバによって管理されるされ、レコードが更新されるたびに更新されます。

タイムスタンプ フィールドがあれば、Microsoft Access だけを確認する必要があります。一意なインデックスとタイムスタンプ フィールドは、レコードが変更されているかどうかを確認するのにはので、最後にサーバーから取得されています。それ以外の場合、Access する必要があります。レコード内のすべてのフィールドを確認してください。タイムスタンプ フィールドをリンクに追加する場合表は、Access の新しいフィールドを通知するためにテーブルを再リンクします。

トランザクション

トランザクション Visual Basic のアプリケーション (VBA) を使用する場合更新または挿入レコード リンク テーブルでパフォーマンスが向上します。トランザクションは複数の更新を蓄積して、Jet データベース エンジンを有効にしてそれは、1 つのバッチとして記述します。Microsoft SQL Server では、トランザクションを保持します。他のユーザーからデータを読み取るようにするロックを生成するための簡単です現在のトランザクションによって影響を受けます。トランザクションを入れ子にすることができますがVBA は、ほとんどのサーバーは入れ子になったトランザクションをサポートしていません。Microsoft Access を送信します。レベル 1 のトランザクション サーバーのみ。

レコード セットとコードの最適化

すべてを保存することができますまたは一部のデータに含まれています。 レコード セット オブジェクトは、ダイナセット タイプの recordset を設定してローカルのメモリ内の CacheSizeCacheStart [プロパティ] します。

キャッシュ ・ サイズは、5 〜 1200年です。レコードがあります。使用可能なメモリは、余分なレコードがキャッシュのサイズを超える場合一時ディスク ファイルに排出されます。適用、 FillCache メソッドは、キャッシュ サーバーのデータを格納します。キャッシュを回復するのにはメモリの設定は、 CacheSize 0 のプロパティです。

レコード セット変数を実装します。必要な機能だけ。たとえば、追加、 dbAppendOnly オプションと共に、 OpenRecordset レコード セットに新しいレコードを追加する場合の方法です。場合は、レコード セットの SQL ベースの機能を更新、または編集する必要がありますしないでください。パススルー クエリ。挿入してレコードを更新する最速の方法を使用するにはパススルー クエリのコードを SQL。

MSysConf テーブル

サーバー コントロールに対して不正をという名前のテーブルを作成することができます。背景の作成 (レコードが Access によって読み取り速度アイドル時間中にサーバー)。次の表では、行の数を設定できます。一度に取得されるデータの遅延の秒数各取得間。過剰な読み取りロックは、サーバー上で発生する場合は、背景のカタログの作成速度を上げるために、表の設定を調整できます。Ifバック グラウンドで大量のネットワーク トラフィックが生成される、調整することができます。それを遅く設定です。

Microsoft Jet データベース エンジン ODBC 接続ホワイト ペーパー

"Jet 重要な関連情報がデータベース エンジン ODBC 接続の"ホワイト ペーパーこのようなドキュメント作成Jet 3.0 です。ただし、この情報が Jet 4.0 に適用されます。このドキュメントMicrosoft Jet 3.0 データベース エンジンと、ODBC を使用する方法について説明します。白用紙は、次のマイクロソフト Web サイトからダウンロードできます。
http://download.microsoft.com/download/access95/whitep5/1/W98/EN-US/Rjwpv3.exe

Access プロジェクト

Access プロジェクトは OLEDB を使用して Microsoft SQL Server 6.5 にリンクするにはまたは 7.0。すべての Access データベース内のテーブル SQL にリンクされているテーブルがある場合代わりに Access プロジェクトを作成することができますのパフォーマンスが向上するサーバーです。、データベースへのアクセスのすべてのテーブルが含まれている場合は、ただし、このオプションではありません。考えられる。

プロパティ

文書番号: 208858 - 最終更新日: 2011年7月21日 - リビジョン: 5.0
キーワード:?
kbhowto kbdownload kbusage kbmt KB208858 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:208858
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com