Olá à lista,
Queria fazer um disparador sobre uma tabela com dois campos do
tipo 'Geometry' (geom_23030 e geom_4258) cada um com um sistema de
coordenadas diferente.
A ideia era que o disparador actualiza-se o segundo campo sempre que
houvesse um INSERT ou UPDATE no primeiro campo e assim tivesse
2010/11/16 Osvaldo Kussama
> Em 15 de novembro de 2010 14:38, Eloi Ribeiro
> escreveu:
> > Olá à lista,
> > Queria fazer um disparador sobre uma tabela com dois campos do
> > tipo 'Geometry' (geom_23030 e geom_4258) cada um com um sistema de
> > coordenadas diferente.
> > A ideia era que o dispa
Em 16 de novembro de 2010 14:33, Eloi Ribeiro escreveu:
>
> Obrigado Osvaldo, era isso mesmo que queria fazer.
> Apenas nao funciona o ultimo UPDATE.
> Simplificando o exemplo anterior:
> --DROP TABLE sch_temp.teste;
> CREATE TABLE sch_temp.teste (id serial primary key, x int, x100 int);
> CREATE
On Tue, Nov 16, 2010 at 19:34, Osvaldo Kussama wrote:
> Em 16 de novembro de 2010 14:33, Eloi Ribeiro
> escreveu:
> >
> > Obrigado Osvaldo, era isso mesmo que queria fazer.
> > Apenas nao funciona o ultimo UPDATE.
> > Simplificando o exemplo anterior:
> > --DROP TABLE sch_temp.teste;
> > CREATE T
Em 16 de novembro de 2010 17:22, Eloi Ribeiro escreveu:
>
> Com esta ultima alteração os resultados são os mesmos.
> Nao existe nenhuma outra dependência, ao actualizar uma coordenada a
> outra deve ser automaticamente modificada.
> Eloi
IF (NEW.x100 IS NOT NULL) THEN
NEW.x = NEW.x100/100;
On Tue, Nov 16, 2010 at 21:02, Osvaldo Kussama wrote:
> Em 16 de novembro de 2010 17:22, Eloi Ribeiro
> escreveu:
> >
> > Com esta ultima alteração os resultados são os mesmos.
> > Nao existe nenhuma outra dependência, ao actualizar uma coordenada a
> > outra deve ser automaticamente modificada.
O teste está errado. o campo não informado não contém NULL. Teste se é
igual ao OLD.
Veja:
bdteste=# CREATE TEMP TABLE teste (id serial primary key, x int, x100 int);
NOTICE: CREATE TABLE will create implicit sequence "teste_id_seq" for
serial column "teste.id"
NOTICE: CREATE TABLE / PRIMARY KEY
On Tue, Nov 16, 2010 at 23:29, Osvaldo Kussama wrote:
> O teste está errado. o campo não informado não contém NULL. Teste se é
> igual ao OLD.
>
> Veja:
> bdteste=# CREATE TEMP TABLE teste (id serial primary key, x int, x100 int);
> NOTICE: CREATE TABLE will create implicit sequence "teste_id_seq
Em 15 de novembro de 2010 14:38, Eloi Ribeiro escreveu:
> Olá à lista,
> Queria fazer um disparador sobre uma tabela com dois campos do
> tipo 'Geometry' (geom_23030 e geom_4258) cada um com um sistema de
> coordenadas diferente.
> A ideia era que o disparador actualiza-se o segundo campo sempre q