Bom dia pessoal
Estou com um probleminha.
Tenho uma função que utiliza o comando lock para bolquear a tabela
Código: LOCK TABLE ARC_COLETA_LOTE IN EXCLUSIVE MODE
O problema agora é a tabela está bloqueada e eu não consigo fazer mais nada.
Alguém saberia me dizer qual o comando para desbloquear. Se lock bloquea qual o seu oposto.
E eu preciso também saber o que foi bloqueado.
Se alguém puder me ajudar eu agradeço.
Atenciosamente,
Sheila
Problema com lock table
- dr_gori
- Moderador
- Mensagens: 5024
- Registrado em: Seg, 03 Mai 2004 3:08 pm
- Localização: Portland, OR USA
- Contato:
Thomas F. G
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered
Que eu saiba, o LOCK TABLE é por transação. Ou seja, vai durar até o próximo commit ou rollback.
-
- Rank: Estagiário Pleno
- Mensagens: 3
- Registrado em: Qui, 08 Fev 2007 7:36 am
- Localização: Santo Andre - SP
Vou tentar explicar melhor o que está acontecendo.
Eu tenho uma procedure que chama uma função.
Nesta procedure estou inserindo dados em uma tabela.
Na tabela em questão eu tenho um campo seqüencial.
Para gerar o numero seqüencial a procedure chama a função que utiliza o comando lock para travar a tabela e depois faz uma select utilizando a função max para pegar o próximo elemento. Quando a função devolve o valor a procedure inseri os dados.
O problema é que toda a vez que eu chamo a procedure ela para no comando lock e não vai.
Logo de manhã a procedure funcionava certinha, inseri vários registros. Depois de algumas tentativas a procedure parou de funcionar derrepente. Esta procedure é bem antiga, já está funcionando a uns 3 anos pelo menos.
Agora eu não sei o que fazer. Acho que deve estar travado algum processo, eu não sei. Já procurei na internet algo sobre o lock, mas até agora nada.
A seleção eu faço normalmente. Só não consigo utilizar a procedure. Preciso dela funcionando.
Obrigada pela atenção
Sheila
Eu tenho uma procedure que chama uma função.
Nesta procedure estou inserindo dados em uma tabela.
Na tabela em questão eu tenho um campo seqüencial.
Para gerar o numero seqüencial a procedure chama a função que utiliza o comando lock para travar a tabela e depois faz uma select utilizando a função max para pegar o próximo elemento. Quando a função devolve o valor a procedure inseri os dados.
O problema é que toda a vez que eu chamo a procedure ela para no comando lock e não vai.
Logo de manhã a procedure funcionava certinha, inseri vários registros. Depois de algumas tentativas a procedure parou de funcionar derrepente. Esta procedure é bem antiga, já está funcionando a uns 3 anos pelo menos.
Agora eu não sei o que fazer. Acho que deve estar travado algum processo, eu não sei. Já procurei na internet algo sobre o lock, mas até agora nada.
A seleção eu faço normalmente. Só não consigo utilizar a procedure. Preciso dela funcionando.
Obrigada pela atenção
Sheila
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Bing [Bot] e 1 visitante