Dela via


Rullningsbara markörer och transaktionsisolering

I följande tabell visas de faktorer som styr synligheten för ändringar.

Ändringar som gjorts av: Synligheten beror på:
Cursor Markörtyp, markörimplementering
Andra instruktioner i samma transaktion Markörtyp
Utsagor i andra transaktioner Markörtyp, transaktionsisoleringsnivå

Dessa faktorer visas i följande bild.

Faktorer som styr synligheten för ändringar

I följande tabell sammanfattas möjligheten för varje markörtyp att identifiera ändringar som görs av sig själv, av andra åtgärder i sin egen transaktion och av andra transaktioner. Synligheten för de senare ändringarna beror på markörens typ och isoleringsnivån för transaktionen som innehåller markören.

Markörtyp\åtgärd Self Egen

Txn
Othr

Txn

(RU[a])
Othr

Txn

(RC[a])
Othr

Txn

(RR[a])
Othr

Txn

(S[a])
Statisk
Infoga Kanske[b] Nej Nej Nej Nej Nej
Update Kanske[b] Nej Nej Nej Nej Nej
Ta bort Kanske[b] Nej Nej Nej Nej Nej
Nyckeluppsättningsdriven
Infoga Kanske[b] Nej Nej Nej Nej Nej
Update Yes Yes Yes Yes Nej Nej
Ta bort Kanske[b] Yes Yes Yes Nej Nej
Dynamisk
Infoga Yes Yes Yes Yes Yes Nej
Update Yes Yes Yes Yes Nej Nej
Ta bort Yes Yes Yes Yes Nej Nej

[a] Bokstäverna inom parentes anger isoleringsnivån för transaktionen som innehåller markören. isoleringsnivån för den andra transaktionen (där ändringen gjordes) är irrelevant.

RU: Läsa okommenterade

RC: Lästa data bekräftade

RR: Repeterbar läsning

S: Serializable (kan serialiseras)

[b] Beror på hur markören implementeras. Om markören kan identifiera sådana ändringar rapporteras via alternativet SQL_STATIC_SENSITIVITY i SQLGetInfo.