次の方法で共有


混合カーソル

混合カーソルは、キーセット ドリブン カーソルと動的カーソルの組み合わせです。 これは、結果セットが大きすぎて結果セット全体のキーを適切に保存できなくなる場合に使用されます。 混合カーソルは、結果セット全体より小さいが行セットよりも大きいキーセットを作成することによって実装されます。

アプリケーションがキーセット内をスクロールする限り、動作はキーセットドリブンです。 アプリケーションがキーセットの外側をスクロールすると、動作は動的になります。カーソルは要求された行をフェッチし、新しいキーセットを作成します。 新しいキーセットが作成されると、その動作は、そのキーセット内のキーセットドリブンに戻ります。

たとえば、結果セットに 1,000 行があり、キーセット サイズが 100 で行セット サイズが 10 の混合カーソルを使用するとします。 最初の行セットがフェッチされると、カーソルは最初の 100 行のキーで構成されるキーセットを作成します。 その後、要求に応じて最初の 10 行が返されます。

次に、別のアプリケーションが行 11 と 101 を削除するとします。 カーソルが行 11 を取得しようとすると、この行のキーはあるが行が存在しないため、ギャップが発生します。これはキーセット ドリブンの動作です。 カーソルが行 101 を取得しようとすると、行のキーがないため、行が見つからないことがカーソルによって検出されません。 代わりに、以前の行 102 を取得します。 これは動的カーソル動作です。

混合カーソルは、キーセットサイズが結果セットサイズと等しい場合、キーセット ドリブン カーソルと同等です。 混合カーソルは、キーセットのサイズが 1 の場合の動的カーソルと同じです。