Como eu faço um lock em um registro?
Resposta: O SQL Server automaticamente escolhe o melhor recurso que será
colocado em lock automaticamente. Por exemplo: vamos supor que uma instrução
faça um UPDATE que afete 300 linhas de uma tabela. O SQL Server vai fazer o
lock que for melhor para ele, que podem ser 300 locks de linhas ou quem sabe
um lock de extent ou mesmo um lock de tabela para efetuar esta instrução
UPDATE.
Porém existe como 'forçar' um lock de linha através de um HINT que se
colocar na instrução. Estes HINTS que colocamos em instruções devem ser bem
examinados antes de sua aplicação por vários motivos, entre eles desempenho.
Por exemplo, para forçar um lock de linha em uma instrução UPDATE:
UPDATE TABELA WITH(ROWLOCK)
SET CAMPO = 'NOVO_VALOR'
WHERE CAMPO1 = 9
Espero ter ajudado...qq reply
Bruno Velaz
MCP
www.i-devnet.com
PS: FOI ÚTIL PRA VOCÊ? Então ajude outras pessoas, marque-a como útil.
Post by RFerrariEstou utilizando os seguintes comandos para bloquear um registro porem não
está funcionando. Alguem pode me auxiliar ????
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
GO
BEGIN TRANSACTION
SELECT au_lname FROM authors WITH (ROWLOCK)
Grato,
Ricardo