0

バックエンドを MSAccess から SQL Server 2008 R2 Express に移行しています。MSAccess クエリをストア プロシージャに変更しました。データは約 250,000 件以上のレコードです。

MSAccess のバックエンドには、非常に大きくなる可能性のある 2 つのテーブルがあります….PartsInventory_BE と Service_BE。

そうは言っても、アクセス フロント エンドからアクセス バック エンドと通信する約 9,000 レコードをテストしたところ、1 つのフォームを読み込むのに 20 ~ 30 秒かかり、9,000 レコードすべてをプルしたことが示されました。この種のパフォーマンスを使用して、フロント エンドに PartsInventory と呼ばれる同一のテーブルが含まれるように回避策を講じました。このテーブルは、PartsInventory と PartsInventory_BE の両方を継続的に同期します。

パフォーマンスを維持/向上させるために、バックエンドとして SQL サーバーにこのスタイルを採用する必要がありますか? はいの場合、どのようにすればよいですか? いいえの場合は、その参照もリストできますか。

4

1 に答える 1

2

Access では、新しいバックエンドに SQL コマンドを送信し、単純に結果を返すパススルー クエリを作成できることに注意してください。Access の他のテーブルやクエリと同じように使用できます。

データのプルに時間がかかりすぎることがわかった場合は、インデックス スキームを検討することをお勧めします。列とインデックスに関する情報を取得するには:

SQL Server DB のすべてのインデックスとインデックス列のリスト

于 2013-03-09T11:35:45.020 に答える