- Este tópico contém 7 respostas, 2 vozes e foi atualizado pela última vez 19 anos, 4 meses atrás por
Marcio68Almeida.
-
AutorPosts
-
2 de agosto de 2006 às 4:35 pm #76104
gbarbi
Participanteolá!
estou com um problema para fazer um select em uma tabela e usar o que no SQL seria with(nolock).no Oracle achei algo sobre READ_LOCK_TYPE=nolock, mas não achei como usa-lo.
meu problema é que preciso fazer um select dentro do outro, fazendo counts e tudo mais.. porém a tabela possue 8 milhões de registros, e fica muuuuito lento..
portanto, se alguem souber como fazer um select somente nos registros que estiverem commited, agradeço!
2 de agosto de 2006 às 5:59 pm #76106Marcio68Almeida
ParticipanteBom, vamos ao que eu entendi da documentação…
Se você colocar READ_LOCK_TYPE=NOLOCK, as tabelas com lock não poderão ser utilizadas na sua consulta.
Se você colocar READ_LOCK_TYPE=ROW, a tabela poderá ser usada desde que ROW SHARE esteja defindo.
Se você colocar READ_LOCK_TYPE=TABLE, a tabela poderá ser usada desde que SHARE esteja defindo.
Você está querendo ler tabelas que estão com lock, ou está querendo que a sua consulta não gere lock durante o processo ???
Se for a primeira opção, acho que as informações acima resolvem…
Caso seja a segunda opção, aconselho o uso de cursores…6 de agosto de 2006 às 1:16 am #76123gbarbi
Participanteé a primeira opcao mesmo! eu ate tinha entendido corretamente, mas o caso é, como usar!?
por exemplo, tenho uma query, como a que esta abaixo:select *
from tb_teste
where campo_teste nullonde que eu coloco o READ_LOCK_TYPE=NOLOCK?
preciso setar ele, ou algo do tipo? pois quando coloco ele acima da query, e executo ele mais a query, não funciona, ocorre erro pois estou usando incorretamente ele.6 de agosto de 2006 às 1:16 am #76142gbarbi
Participanteé a primeira opcao mesmo! eu ate tinha entendido corretamente, mas o caso é, como usar!?
por exemplo, tenho uma query, como a que esta abaixo:select *
from tb_teste
where campo_teste nullonde que eu coloco o READ_LOCK_TYPE=NOLOCK?
preciso setar ele, ou algo do tipo? pois quando coloco ele acima da query, e executo ele mais a query, não funciona, ocorre erro pois estou usando incorretamente ele.7 de agosto de 2006 às 8:18 pm #76125Marcio68Almeida
ParticipanteBom… não tenho bem certeza, mas pela documentação que vi, esse parâmetro está na conecção, mas creio que deva estar dentro deuma transação Begin…End.
7 de agosto de 2006 às 8:18 pm #76145Marcio68Almeida
ParticipanteBom… não tenho bem certeza, mas pela documentação que vi, esse parâmetro está na conecção, mas creio que deva estar dentro deuma transação Begin…End.
7 de agosto de 2006 às 8:19 pm #76126Marcio68Almeida
ParticipanteBom… não tenho bem certeza, mas pela documentação que vi, esse parâmetro está na conecção, mas creio que deva estar dentro deuma transação Begin…End.
7 de agosto de 2006 às 8:19 pm #76147Marcio68Almeida
ParticipanteBom… não tenho bem certeza, mas pela documentação que vi, esse parâmetro está na conecção, mas creio que deva estar dentro deuma transação Begin…End.
-
AutorPosts
- Você deve fazer login para responder a este tópico.