Condividi tramite


Compatibilità dei blocchi

Se una risorsa è già bloccata da una transazione e una seconda transazione deve accedervi, Microsoft SQL Server Compact consente di determinare se concedere il secondo blocco in base alla compatibilità della modalità di blocco utilizzata dalla prima transazione.

Su una risorsa già bloccata è possibile aggiungere altri tipi di blocchi solo se compatibili. Se è già presente un blocco esclusivo (X), ad esempio, nessun'altra transazione potrà acquisire un blocco condiviso, di aggiornamento o esclusivo sulla risorsa fino al rilascio del blocco X al termine della prima transazione. In alternativa, se a una risorsa è stato applicato un blocco condiviso (S), anche altre transazioni possono acquisire un blocco condiviso o di aggiornamento (U) sull'elemento, anche se la prima transazione non è ancora completata. Nessuna transazione, tuttavia, può acquisire un blocco esclusivo fino al rilascio del blocco condiviso.

Le modalità di blocco delle risorse presentano una matrice di compatibilità che illustra le compatibilità tra blocchi sulle stesse risorse, elencate per potenza di blocco in ordine crescente.

Nella tabella seguente sono illustrate le modalità di blocco richieste e le relative compatibilità con la modalità di blocco esistente.

Modalità richiesta

IS

S

U

IX

SIX

X

Preventivo condiviso (IS)

No

Blocco condiviso (S)

No

No

No

Blocco di aggiornamento (U)

No

No

No

No

Blocco preventivo esclusivo (IX)

No

No

No

No

Condiviso e preventivo esclusivo (SIX)

No

No

No

No

No

Esclusivo (X)

No

No

No

No

No

No

Nota

Il blocco IX è compatibile con la modalità di blocco IX perché IX indica l'intenzione di aggiornare solo alcune righe e non tutte. Altre transazioni possono leggere o aggiornare alcune righe, purché le righe interessate siano diverse dalle righe aggiornate da altre transazioni.

Matrice di compatibilità dei blocchi

SQL Server Compact supporta la gamma di blocchi seguente:

  • Sch-S, Sch-X, S, U, X, IS, IU, IX, SIU, SIX, UIX

Nota

Il blocco di stabilità dello schema (Sch-S) è compatibile con tutte le modalità di blocco tranne la modalità di blocco di modifiche dello schema (Sch-M). Il blocco Sch-M è incompatibile con tutte le altre modalità di blocco.

Per informazioni sulla matrice di compatibilità dei blocchi, vedere la documentazione online di SQL Server.

Vedere anche

Concetti

Informazioni sul blocco

Visualizzazione delle informazioni sui blocchi

Personalizzazione del blocco