5

この Web アプリケーションでは、1 つのモジュールに 18 の画面があります。ユーザーは、データ全体を一度に印刷できるように、18 画面のすべてのデータを 1 ページに収めたいと考えています。

そこで、18 画面すべて (20 ~ 22 テーブル) のデータを取得する Oracle プロシージャを作成しました。この Oracle プロシージャは、私の Java プログラムに 13 個のカーソルを返します。

ページのパフォーマンスは良好で、望ましい結果が得られています。

しかし、それだけ多くのカーソルを Java に戻すと、何か問題が生じるのでしょうか?

4

1 に答える 1

4

1 つのセッションで開かれるカーソルの最大数は、OPEN_CURSORSパラメーターによって制御されます (デフォルト値は 50、多くの場合、数百に拡張されます)。

@Polppanで提案されているように、カーソルのフェッチが終了した後にカーソルを適切に閉じると、18 個のカーソルが同時に開かれても問題はないはずです。

カーソルはクエリへのポインターにすぎないため、ネットワーク経由で一度に 18 個を返すことも問題ありません。

于 2012-09-19T11:14:19.090 に答える