Elemento Lock (XMLA)
Bloqueia um objeto especificado em uma instância do Microsoft SQL Server Analysis Services.
Sintaxe
<Command>
<Lock>
<ID>...</ID>
<Object>...</Object>
<Mode>...</Mode>
</Lock>
</Command>
Características do elemento
Característica |
Descrição |
---|---|
Tipo de dados e comprimento |
Nenhum |
Valor padrão |
Nenhum |
Cardinalidade |
0-n: elemento opcional que pode ocorrer mais de uma vez. |
Comentários
O comando Lock bloqueia um objeto, para uso compartilhado ou exclusivo, no contexto da transação ativa no momento. Apenas administradores de banco de dados ou de servidor podem emitir um comando Lock explicitamente. Um bloqueio em um objeto impede que as transações sejam confirmadas até que o bloqueio seja removido. O Analysis Services oferece suporte a dois tipos de bloqueios: bloqueios compartilhados e bloqueios exclusivos. Para obter mais informações sobre os tipos de bloqueio suportados pelo Analysis Services, consulte Elemento Mode (XMLA).
O Analysis Services permite apenas o bloqueio de bancos de dados. O elemento Object deve conter uma referência de objeto a um banco de dados Analysis Services. Se o elemento Object não for especificado ou se referir a um objeto diferente de um banco de dados, ocorrerá um erro.
Outros comandos emitem um comando Lock implicitamente em um banco de dados do Analysis Services. Qualquer operação que leia dados ou metadados em um banco de dados, por exemplo, qualquer método Discover ou um método Execute que esteja executando um comando Statement, emite implicitamente um bloqueio compartilhado no banco de dados. Qualquer transação que confirme alterações em dados ou metadados em um objeto de um banco de dados Analysis Services, por exemplo, um método Execute que esteja executando um comando Alter, emite implicitamente um bloqueio exclusivo no banco de dados.
Todos os bloqueios são mantidos no contexto da transação atual. Quando a transação atual é confirmada ou revertida, todos os bloqueios definidos dentro da transação são liberados automaticamente.