Oracle 11.2 データベースでストアド プロシージャを呼び出す Java メソッドを実行しています。OUT パラメータを指定してストアド プロシージャを呼び出す JDBC 接続を使用して、結果セットとしてデータベース カーソルを Java メソッドに戻しています。すべてが正常に機能しています。
ここで、2 番目の結果セットを同じストアド プロシージャの Java メソッドに返したいと考えています。このストアド プロシージャに 2 番目の OUT パラメータを追加して 2 番目のカーソルを開くと、すべて正常に動作するように見えます。
両方のカーソルが単にストアド プロシージャで開かれ、Java メソッドを使用してそれらを閉じるため、これが適切かどうか疑問に思っています。
カーソルまたは結果セットのいずれかで、最初のカーソルがOPEN
編集され、その後いくつかのものを選択し、次にOPEN
別のものを選択して 2 番目のカーソルを編集するという事実に起因する問題が発生しますか? 2 番目に選択されたものは、最初に選択されたものを台無しにしますか、それともその逆ですか? または、データベースは 2 番目のカーソルがいつ開かれるかを認識できるほどスマートですか?新しい選択は、最初のカーソルが開かれるのではなく、そこに向けられますか?
私はこれらすべてに慣れていないので、これがJavaの対応する結果セットに複数のカーソルを返す方法であることを確認したかっただけです。コメントありがとうございます。