[firebase-br] Update com select

Eduardo Jedliczka edujed em gmail.com
Sex Jun 17 16:19:20 -03 2011


No Oracle há uma sintaxe parecida, mas não igual a esta...

O problema é que este recurso ainda não é muito claro pelo padrão ANSI SQL.

Acredito que quando a ANSI definir a forma "CORRETA" o firebird irá
adotar o recurso.

Porém existe como contornar isto de outra forma:

EXECUTE BLOCK...BLABLABLA
begin
For select campo1,  campo2 from tabela2
    into :vcampo1, :vcampo2 do
       update tabela set campo1=:vcampo1, campo2=:vcampo2 where blablabla
end;

==========================
Eduardo Jedliczka
Apucarana - Pr
==========================




Em 17 de junho de 2011 15:41, HPensador <hpensador em gmail.com> escreveu:
> Boa tarde Colegas!
>
> Recemente aqui na empresa um dos colegas me perguntou se era possível fazer
> atualização de um campo de uma determinada tabela com o resultado de uma
> consulta a outra tabela. Fiz um texte no IBExpert e o resultado sendo
> perfeito.
>
> update tabela set campo = (select campo from tabela2);
>
> Porém, o que o mesmo estava querendo era algo bem + complexo - vide abaixo;
>
> update tabela set (select campo1, campo2 from tabela2) - vejam que neste
> caso não é especificado os campos que serão atualizados. Conversando com o
> mesmo ele me disse que esse nome do campo é exatamente o nome do campo a ser
> atualizado na tabela e o SGDB já reconhece. Isto posto, fui informado que no
> SQL Server e no PostGreSQL isto é possível. Como não utilizo e nem nunca
> utilizei PostGreSQL não posso confirmar, com relação ao SQL Server trabalhei
> com o mesmo em 2006 e não tenho lembrança disto.
>
> Bem, se isto realmente existe neste demais bancos é uma boa sugestão para
> ser implementada no Firebird em sua versão 3.0 - Cantú anota aí.
>
> --
> []'s,
>
> Hélio Oliveira
> Bel. Ciência da Computação
> Técnico em Contabilidade
> e-mail : hpensador em gmail.com
> Skype : hpensador
> http://hpensador.blogspot.com/
> www.hpensador.net
> (71) 9975-9176
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>




Mais detalhes sobre a lista de discussão lista