Fórum Problemas com triggers #394930
02/02/2011
0
Ontem instalei uma nova versão do meu servidor!
Antes disso eu fiz um dump no meu banco de dados (dumpall). Reinstalei o servidor (Windos 2008 Enterprise e reinstalei o PG.
Ao retornar o meu Dump tive alguns problemas, o psql não reconhecia alguns comandos como "\connect postgres".
O que ele não reconheceu refiz manualmente.
Só que as triggers que eu tenho no banco deixaram de funcionar. Já as olhei e reolhei e não vejo nada que possa estar erradas.
Notem que elas funcionavam normalmente. O erro que estão dando é o seguinte (este erro é de um das triggewr, mas acredito que resolvendo um resove-se todos os outros).
Minha trigger:
É uma trigger simples, ela simplismente guarda todas as alterações que existiram no campo Observações e no campo Status!
Outra coisa que alterou depois que foi alterado o servidor são os generations que antes estavam assim:
e agora só funcionam se estiverem assim:
Eu tive que incluir o schema neles para que funcionassem. Sem ele o PG nem achava o generator.
Minha plataforma:
* PG 8.4 rodando no Windows Server 2008 Enterprise
* Delphi 7 conectando através do Zeos
Alguém teria alguma sugestão de como acertar isso?
Desde já agradeço a todos.
Antes disso eu fiz um dump no meu banco de dados (dumpall). Reinstalei o servidor (Windos 2008 Enterprise e reinstalei o PG.
Ao retornar o meu Dump tive alguns problemas, o psql não reconhecia alguns comandos como "\connect postgres".
O que ele não reconheceu refiz manualmente.
Só que as triggers que eu tenho no banco deixaram de funcionar. Já as olhei e reolhei e não vejo nada que possa estar erradas.
Notem que elas funcionavam normalmente. O erro que estão dando é o seguinte (este erro é de um das triggewr, mas acredito que resolvendo um resove-se todos os outros).
--------------------------- SQL Error: ERRO: registro "new" não tem campo "dt_mudanca" CONTEXT: função PL/pgSQL "update_posvendas" linha 2 em IF. --------------------------- OK
Minha trigger:
BEGIN INSERT INTO parana.historico_pv ( id, status, dt_mudanca, data ) VALUES ( new.id, new.status, new.dt_status, now() ); IF new.observacao <> '' THEN INSERT INTO parana.hist_pv ( id, dt_mudanca, observacoes, data ) VALUES ( new.id, new.dt_status, new.observacao, now() ); END IF; RETURN new; END;
É uma trigger simples, ela simplismente guarda todas as alterações que existiram no campo Observações e no campo Status!
Outra coisa que alterou depois que foi alterado o servidor são os generations que antes estavam assim:
nextval('ordens_id'::regclass)nextval('parana.ordens_id'::regclass)Eu tive que incluir o schema neles para que funcionassem. Sem ele o PG nem achava o generator.
Minha plataforma:
* PG 8.4 rodando no Windows Server 2008 Enterprise
* Delphi 7 conectando através do Zeos
Alguém teria alguma sugestão de como acertar isso?
Desde já agradeço a todos.
Roberto Gugisch
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)