Partager via


Curseurs avec défilement et isolation des transactions

Le tableau suivant répertorie les facteurs qui régissent la visibilité des modifications.

Modifications apportées par : La visibilité dépend des éléments suivants :
Curseur Type de curseur, implémentation du curseur
Autres instructions dans la même transaction Type de curseur
Instructions dans d’autres transactions Type de curseur, niveau d’isolation des transactions

Ces facteurs sont présentés dans l’illustration suivante.

Factors governing the visibility of changes

Le tableau suivant résume la capacité de chaque type de curseur à détecter les modifications apportées par elle-même, par d’autres opérations dans sa propre transaction et par d’autres transactions. La visibilité des dernières modifications dépend du type de curseur et du niveau d’isolation de la transaction contenant le curseur.

Type de curseur\action Self Prop

Txn
Othr

Txn

(RU[a])
Othr

Txn

(RC[a])
Othr

Txn

(RR[a])
Othr

Txn

(S[a])
statique
Insérer Peut-être[b] Non Non Non Non Non
Update Peut-être[b] Non Non Non Non Non
Supprimer Peut-être[b] Non Non Non Non Non
Curseur piloté par jeu de clés
Insérer Peut-être[b] Non Non Non Non Non
Update Oui Oui Oui Oui No Non
Supprimer Peut-être[b] Oui Oui Oui No Non
Dynamique
Insérer Oui Oui Oui Oui Oui Non
Update Oui Oui Oui Oui No Non
Supprimer Oui Oui Oui Oui No Non

[a] Les lettres entre parenthèses indiquent le niveau d’isolation de la transaction contenant le curseur ; le niveau d’isolation de l’autre transaction (dans laquelle la modification a été apportée) n’est pas pertinent.

RU : Lecture non validée

RC : Lecture validée

RR : lecture reproductible

S : Serializable

[b] Dépend de la façon dont le curseur est implémenté. Indique si le curseur peut détecter ces modifications par le biais de l’option SQL_STATIC_SENSITIVITY dans SQLGetInfo.