Compatibilità dei blocchi
Se una risorsa è già bloccata da una transazione e una seconda transazione deve accedervi, Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) 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) |
Sì |
Sì |
Sì |
Sì |
Sì |
No |
Condiviso (S) |
Sì |
Sì |
Sì |
No |
No |
No |
Di aggiornamento (U) |
Sì |
Sì |
No |
No |
No |
No |
Preventivo esclusivo (IX) |
Sì |
No |
No |
Sì |
No |
No |
Condiviso e preventivo esclusivo (SIX) |
Sì |
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 Edition 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 in linea di SQL Server.
Vedere anche
Concetti
Informazioni sul blocco
Visualizzazione delle informazioni sui blocchi
Personalizzazione del blocco