Condividi tramite


Elemento Lock (XMLA)

Blocca un oggetto specificato su un’istanza MicrosoftSQL ServerAnalysis Services.

Sintassi

<Command>
   <Lock>
      <ID>...</ID>
      <Object>...</Object>
      <Mode>...</Mode>
   </Lock>
</Command>

Caratteristiche elemento

Caratteristica

Descrizione

Tipo di dati e lunghezza

Nessuno

Valore predefinito

Nessuno

Cardinalità

0-n: Elemento facoltativo che può ricorrere più di una volta.

Relazioni elemento

Relazione

Elemento

Elementi padre

Command

Elementi figlio

ID, Mode, Object

Osservazioni

Il comando Lock blocca un oggetto, per utilizzo condiviso o esclusivo, all'interno del contesto della transazione attualmente attiva. Solo amministratori del database o amministratori del server possono eseguire in modo esplicito un comando Lock. Un blocco su un oggetto impedisce alle transazioni di eseguire il commit fino alla rimozione del blocco. Analysis Services supporta due tipi di blocchi, blocchi condivisi e blocchi esclusivi. Per ulteriori informazioni sui tipi di blocco supportati da Analysis Services, vedere Elemento Mode (XMLA).

Analysis Services consente solo che i database vengano bloccati. L'elemento Object deve contenere un riferimento all'oggetto a un database Analysis Services. Se l'elemento Object non viene specificato oppure fa riferimento a un oggetto diverso da un database Object, si verifica un errore.

Gli altri comandi eseguono implicitamente un comando Lock su un database Analysis Services. Qualsiasi operazione che legge dati o metadati da un database, ad esempio qualsiasi metodo Discover o un metodo Execute che esegue un comando Statement, esercita implicitamente un blocco condiviso sul database. Qualsiasi transazione che consolida le modifiche nei dati o metadati con un oggetto su un database Analysis Services, ad esempio un metodo Execute che esegue un comando Alter, implicitamente esercita un blocco esclusivo sul database.

Tutti i blocchi sono contenuti nel contesto della transazione corrente. Quando sulla transazione corrente viene eseguito il commit oppure il rollback, tutti i blocchi definiti all'interno della transazione vengono rilasciati automaticamente.

Vedere anche

Riferimento

Concetti