Emerson, tem um ";" antes do primeiro LOOP ("...and NOT attisdropped;")... este é o erro de compilação. Depois disto tens que ter cuidado com comparação de valores NULL.
sds Fábio Gibon ----- Original Message ----- From: Emerson Martins To: pgbr-geral@listas.postgresql.org.br Sent: Friday, October 29, 2010 10:57 AM Subject: Re: [pgbr-geral] Digest pgbr-geral, volume 22, assunto 65 Caros colegas vou postar aqui a minha o meu esquema como estou fazendo se alguem puder ajudar..(Estar com erros)! a tabela CREATE TABLE AUDITORIA ( codigo serial NOT NULL, tipo CHAR(1), data TIMESTAMP, usuario VARCHAR(20), tabela VARCHAR(30), campo VARCHAR(30), pid VARCHAR(30), transacao varchar(30) ) a função: CREATE OR REPLACE FUNCTION AUDITORIA () RETURNS TRIGGER AS ' DECLARE consulta varchar; data timestamp; tipo varchar; cols record; usuario varchar; id integer; pid integer; columna varchar; transacao varchar; BEGIN -- data select into data current_timestamp(0); -- ip select into usuario inet_client_addr(); -- pid select into pid pg_backend_pid(); -- transacao select into transacao txid_current(); IF TG_OP = ''INSERT'' THEN tipo:=''I''; select into id new.oid; END IF; IF TG_OP = ''UPDATE'' THEN tipo:=''U''; select into id old.oid; END IF; -- Loop FOR cols IN select attname as nome, attnum as numero from pg_attribute where attrelid = TG_RELID and attnum > 0 and NOT attisdropped; LOOP IF NEW. || cols.nome || <> OLD. || cols.nome || THEN INSERT INTO auditoria (TIPO,DATA,USUARIO,TABELA,CAMPO,NOME1,NOME2,NOME3,PID,TRANSACAO) values (tipo,data,usuario,TG_RELNAME,id,cols.nome,cols.nome,cols.nome,pid,transacao); END IF; END LOOP; RETURN NEW; END; ' LANGUAGE plpgsql; -- CREATE TRIGGER AUDITAR_TABELA1 -- AFTER INSERT OR UPDATE OR DELETE ON TABELA1 -- FOR EACH ROW EXECUTE PROCEDURE AUDITORIA(); Alguem pode identificar. o Erro ta no loop ERROR: missing "LOOP" at end of SQL expression CONTEXTO: compilation of PL/pgSQL function "auditoria" near line 28 Em 29 de outubro de 2010 12:00, <pgbr-geral-requ...@listas.postgresql.org.br> escreveu: Send pgbr-geral mailing list submissions to pgbr-geral@listas.postgresql.org.br To subscribe or unsubscribe via the World Wide Web, visit https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral or, via email, send a message with subject or body 'help' to pgbr-geral-requ...@listas.postgresql.org.br You can reach the person managing the list at pgbr-geral-ow...@listas.postgresql.org.br When replying, please edit your Subject line so it is more specific than "Re: Contents of pgbr-geral digest..." Tópicos de Hoje: 1. Failover no Windows (Norberto Delle) 2. Re: Failover no Windows (JotaComm) 3. Re: Failover no Windows (Norberto Delle) ---------------------------------------------------------------------- Message: 1 Date: Fri, 29 Oct 2010 10:49:21 -0200 From: Norberto Delle <betode...@gmail.com> Subject: [pgbr-geral] Failover no Windows To: Comunidade PostgreSQL Brasileira <pgbr-geral@listas.postgresql.org.br> Message-ID: <4ccac2d1.7080...@gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Bom dia pessoal Eu configurei um servidor warm standby do PostgreSQL 9 no Windows 2008 R2 e estou testando o processos de failover. Quando crio o arquivo de trigger no local especificado no parâmetro 'trigger_file' do recovery.conf nada acontece. Alguém tem alguma idéia do que pode estar errado? Obrigado Norberto ------------------------------ Message: 2 Date: Fri, 29 Oct 2010 11:04:51 -0200 From: JotaComm <jota.c...@gmail.com> Subject: Re: [pgbr-geral] Failover no Windows To: Comunidade PostgreSQL Brasileira <pgbr-geral@listas.postgresql.org.br> Message-ID: <aanlkti=qyd3swswq7rewnr0vym5tteyx4+jvb99bf...@mail.gmail.com> Content-Type: text/plain; charset="iso-8859-1" Olá, Em 29 de outubro de 2010 10:49, Norberto Delle <betode...@gmail.com>escreveu: > Bom dia pessoal > > Eu configurei um servidor warm standby do PostgreSQL 9 no Windows 2008 > R2 e estou testando > o processos de failover. Quando crio o arquivo de trigger no local > especificado no parâmetro 'trigger_file' > do recovery.conf nada acontece. > Alguém tem alguma idéia do que pode estar errado? > Como você fez a criação do arquivo? Algum erro no Log do PostgreSQL? O que você considera que nada acontece? > > Obrigado > > Norberto > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > []s -- JotaComm http://jotacomm.wordpress.com -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20101029/4049f15d/attachment-0001.htm ------------------------------ Message: 3 Date: Fri, 29 Oct 2010 11:19:14 -0200 From: Norberto Delle <betode...@gmail.com> Subject: Re: [pgbr-geral] Failover no Windows To: Comunidade PostgreSQL Brasileira <pgbr-geral@listas.postgresql.org.br> Message-ID: <4ccac9d2.2060...@gmail.com> Content-Type: text/plain; charset="iso-8859-1" Em 29/10/2010 11:04, JotaComm escreveu: > Olá, > > Em 29 de outubro de 2010 10:49, Norberto Delle <betode...@gmail.com > <mailto:betode...@gmail.com>> escreveu: > > Bom dia pessoal > > Eu configurei um servidor warm standby do PostgreSQL 9 no Windows 2008 > R2 e estou testando > o processos de failover. Quando crio o arquivo de trigger no local > especificado no parâmetro 'trigger_file' > do recovery.conf nada acontece. > Alguém tem alguma idéia do que pode estar errado? > > > Como você fez a criação do arquivo? Algum erro no Log do PostgreSQL? > > O que você considera que nada acontece? > > > Obrigado > > Norberto > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > <mailto:pgbr-geral@listas.postgresql.org.br> > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > > > []s > -- > JotaComm > http://jotacomm.wordpress.com > > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral Olá Jota Eu copiei o arquivo de um outro local, na base do Ctrl+C - Ctrl+V mesmo. Quando eu digo que nada acontece é que eu esperava que o processo de recuperação parasse e o standby ficasse disponível para conexões. Mas pelo contrário, no log nada aparece indicando que o arquivo trigger tenha sido detectado, e o processo de recuperação apenas continua, como se nada tivesse mudado. Obrigado pela atenção Norberto -------------- Próxima Parte ---------- Um anexo em HTML foi limpo... URL: http://listas.postgresql.org.br/pipermail/pgbr-geral/attachments/20101029/7b69d96b/attachment-0001.htm ------------------------------ _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral Fim da Digest pgbr-geral, volume 22, assunto 65 *********************************************** ------------------------------------------------------------------------------ _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral