Oi, Alipio

2009/12/22 Alipio Dantas <[email protected]>

> Oi Jota,
>
> Mas é isso,
>
> eu fiz somente com duas e funcionou
>
> utilizo o 8.4, pode ter havido alguma mudança....
>

update auxiliar_dados_gerais.adg_territorio_identidade
 set adg_teid_poly = fora.the_geom from public.tigeo fora join
auxiliar_dados_gerais.adg_territorio_identidade dentro on fora.codigo =
dentro.adg_teid_id
 where  fora.codigo  =
auxiliar_dados_gerais.adg_territorio_identidade.adg_teid_id

Acima coloquei a sua consulta.

Veja que você faz um update em adg_territorio_identidade e depois você
usa tigeo e da um apelido de fora e faz um JOIN com adg_territorio_cidade e
dá um apelido de dentro, na verdade quando você dá o apelido para esta
tabela, na verdade no JOIN você não está usando a tabela
adg_territorio_identidade que você definiu no ínicio do UPDATE, por isso é
que você conseguiu usar a cláusula JOIN, agora se você fizer como abaixo não
irá funcionar.

UPDATE foo SET nome=bar.nome FROM bar JOIN foo ON bar.codigo=foo.codigo;



> 2009/12/22 JotaComm <[email protected]>
>
> Olá, Alipio
>>
>> 2009/12/22 Alipio Dantas <[email protected]>
>>
>> Quanto ao Join existe e funciona!!!, fiz várias atualizações de tabela
>>> para tabela com este comando.
>>>
>>
>> Sim, o JOIN existe, porém para poder usar é necessário ter no mínimo 3
>> tabelas, se for apenas duas é necessário fazer o JOIN através do uso da
>> cláusula WHERE, pois senão a tabela a ser atualizada seria especificada duas
>> vezes e isso o PostgreSQL não aceita. E sempre que for fazer o JOIN com a
>> tabela a ser atualizada pelo comando UPDATE o JOIN com ela deve ser através
>> da cláusula WHERE.
>>
>>>
>>> Caro Euler,
>>>
>>> Não entendi a pergunta referente a definição da tabela?
>>>
>>> seria a definição da coluna? se for é GEOMETRY
>>>
>>> Esta restrição é incluída automaticamente quando se insere uma coluna
>>> Geométrica , se não me engano faz a ligação das geometrias com os dados alfa
>>> , mas isso é no shape, não me lembro de ter visto que isso teria algum
>>> problema
>>> no postgis, mas de qualquer forma ele acusa erro nessa verificação.
>>>
>>>
>>>
>>> 2009/12/22 Euler Taveira de Oliveira <[email protected]>
>>>
>>> Osvaldo Kussama escreveu:
>>>> > 2009/12/21 Alipio Dantas <[email protected]>:
>>>>
>>>> <corte>
>>>>
>>>> >> ERROR:  new row for relation "adg_territorio_identidade" violates
>>>> check
>>>> >> constraint "enforce_srid_adg_teid_poly"
>>>> >>
>>>> >>
>>>> >> se eu excluir esta constraint eu faço a inserção porém tenho
>>>> problemas com a
>>>> >> topologia .
>>>> >>
>>>> Qual definição da tabela? O que é esta restrição de verificação?
>>>>
>>>> > Não existe a cláusula JOIN no comando UPDATE [1].
>>>> >
>>>> Existe! O _fromlist_ inclui tudo que pode aparecer na cláusula FROM.
>>>>
>>>>
>>>> --
>>>>  Euler Taveira de Oliveira
>>>>  http://www.timbira.com/
>>>> _______________________________________________
>>>> pgbr-geral mailing list
>>>> [email protected]
>>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>>>
>>>
>>>
>>> _______________________________________________
>>> pgbr-geral mailing list
>>> [email protected]
>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>>
>>>
>>
>> []s
>> --
>> JotaComm
>> http://jotacomm.wordpress.com
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> [email protected]
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>>
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>

[]s
-- 
JotaComm
http://jotacomm.wordpress.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a