次の方法で共有


スクロール可能なカーソルとトランザクションの分離

次の表に、変更の可視性を制御する要因を示します。

次によって行われた変更: 可視性は次に依存します。
Cursor カーソルの種類、カーソルの実装
同じトランザクション内の他のステートメント カーソルの種類
他のトランザクションのステートメント カーソルの種類、トランザクション分離レベル

これらの要因を次の図に示します。

変更の可視性を管理する要因

次の表は、カーソルの種類ごとに、それ自体、独自のトランザクション内の他の操作、およびその他のトランザクションによって行われた変更を検出する機能をまとめたものです。 後者の変更の可視性は、カーソルの種類と、カーソルを含むトランザクションの分離レベルによって異なります。

カーソルの種類\action Self 所有する

Txn
Othr

Txn

(RU[a])
Othr

Txn

(RC[a])
Othr

Txn

(RR[a])
Othr

Txn

(S[a])
スタティック
[挿入] もしかしたら[b] いいえ いいえ いいえ いいえ いいえ
Update おそらく[b] いいえ いいえ いいえ いいえ いいえ
削除​​ たぶん[b] いいえ いいえ いいえ いいえ いいえ
キーセット駆動
[挿入] もしかしたら[b] いいえ いいえ いいえ いいえ いいえ
Update イエス イエス イエス イエス いいえ いいえ
削除​​ たぶん[b] イエス イエス イエス いいえ いいえ
動的
[挿入] イエス イエス イエス イエス イエス いいえ
Update イエス イエス イエス イエス いいえ いいえ
削除​​ イエス イエス イエス イエス いいえ いいえ

[a] かっこ内の文字は、カーソルを含むトランザクションの分離レベルを示します。他のトランザクション (変更が行われた) の分離レベルは関係ありません。

RU: コミットされていない読み取り

RC: 読み取りコミット済み

RR: 反復可能読み取り

S: シリアル化可能

[b] カーソルの実装方法によって異なります。 カーソルがこのような変更を検出できるかどうかは、 SQLGetInfo の SQL_STATIC_SENSITIVITY オプションを使用して報告されます。