[firebase-br] Update nos 3500 primeiros registros

Carlos H. Cantu (TeamFB) listas em warmboot.com.br
Ter Ago 21 10:05:44 -03 2007


Para cada linha da tabela, a subquery é executada novamente, portanto,
graças a condição i.codigo = v.codigo, vc acaba atualizando toda a
tabela.

Vc pode resolver o problema fazendo uma stored procedure com um
cursor. Ou, se estiver usando o FB 2, usar o Execute Block.

[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br

EdP> Olá Paulo

EdP>         Assim como você o Fabio me deu a mesma sugestão. A cláusula order by na
EdP> minha sub-query você pode ignorar, mas já rodei o update do jeito que 
EdP> você sugeriu e o resultado é o mesmo, ele faz updade em todos os 7500 
EdP> registros, estou gerando um arquivo texto, e queria apenas separar em 
EdP> dois arquivos com 3.500 registros no máximo, independente da ordem, 
EdP> apenas que seja coligada = 13.
EdP>         Me parece que o FIRST dentro de um sub-query não surge efeito e se eu
EdP> executar a sub-query apenas ela me retorna os 3500.

EdP>         Já procurei na documentação, nos livros mas não encontro um exemplo
EdP> deste update. Estou usando a versão 2.0 do FireBird.

EdP> Obrigado assim mesmo.






Mais detalhes sobre a lista de discussão lista