With LOCK ?!!!

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP

:-o
Pessoal, bom dia.

Gostaria se possível, que fossem esclarecidas duas dúvidas, please:

1) Select for Update -> Realizado sempre que quero manipular dados de uma linha. Por exemplo, dar um Update e, ter certeza de que ninguém vai mexer neste mesmo registro/linha.

Dúvida: Ele "trava" toda a linha ou a(s) coluna(s) referenciadas no update?

2) Qual a funcionalidade de WITH LOCK nas cláusulas? Seria a mesma função da For Update, porém com alguns outros privilégios?

muito obrigado,

Abraços,

Trevisolli
lamanita
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 42
Registrado em: Seg, 17 Mai 2004 2:41 pm
Localização: Porto Alegre - RS
Samuel, o lamanit@

Olá,
Que eu saiba o for update vai bloquear a linha toda, não é por coluna, é por registro.
E tem outra, se tu faz um select for update sem where, ele vai dar lock na tabela toda. Ele vai lockar as linhas que vierem na consulta.
Esse lock é só pra update, pois tu vai poder fazer select de uma tabela em lock normalmente.
Sobre o with lock não sei nada a respeito. Já usei o lock table [tabela] in exclusive mode; que faz a mesma coisa...
delphicarlos
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 1
Registrado em: Qua, 31 Ago 2005 4:28 pm
Localização: SP
Contato:
Carlos Eduardo Cabral

Ainda dentro do assunto do Lock's, é possivel eu saber qual linha esta sendo lockada e por qual usuario ?
Digamos q um usuario esteja lockando uma linha e eu queira descobrir q linha é esta, é possivel?

Grato,

Carlos Eduardo
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 13 visitantes