0

特定のデータベースの巨大な1つのテーブルを処理し、いくつかの統計データを別の10のテーブルに挿入するクライアントアプリがあります。他のアプリケーションによるデータベースの使用を禁止するために、データベースをシングルユーザーモードに移行します。すべて正常に機能しますが、接続が1つしかない場合は、すべてのデータを処理して挿入するのに長い時間がかかります。「シングルユーザーモード」なしで複数のスレッドと複数の接続を使用すると、時間が約5倍短縮されます。問題は、他のアプリケーションによるデータベースへのアクセスをブロックするが、アプリケーションからの複数の接続を同時に使用できるようにする別の方法はありますか?

4

2 に答える 2

1

ログオン トリガーを使用するのはどうですか。ログオンが許可されているユーザー名を含むテーブルを作成します。ユーザーがテーブルにない場合は、ログオンできないようにロールバックします。

マイケル・ハーモン

于 2013-03-13T23:03:45.230 に答える
0

クライアントとデータベースの間にレイヤーを導入できます。

レイヤーはクライアントを追跡し、転送のためにデータベースにアクセスできるのは 1 つだけです。

このレイヤーは、データベースに直接アクセスできる唯一のプロセスです。

于 2013-03-13T19:34:52.440 に答える