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: [email protected]
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, <[email protected]>
escreveu:
Send pgbr-geral mailing list submissions to
[email protected]
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
[email protected]
You can reach the person managing the list at
[email protected]
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 <[email protected]>
Subject: [pgbr-geral] Failover no Windows
To: Comunidade PostgreSQL Brasileira
<[email protected]>
Message-ID: <[email protected]>
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 <[email protected]>
Subject: Re: [pgbr-geral] Failover no Windows
To: Comunidade PostgreSQL Brasileira
<[email protected]>
Message-ID:
<[email protected]>
Content-Type: text/plain; charset="iso-8859-1"
Olá,
Em 29 de outubro de 2010 10:49, Norberto Delle
<[email protected]>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
> [email protected]
> 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 <[email protected]>
Subject: Re: [pgbr-geral] Failover no Windows
To: Comunidade PostgreSQL Brasileira
<[email protected]>
Message-ID: <[email protected]>
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 <[email protected]
> <mailto:[email protected]>> 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
> [email protected]
> <mailto:[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
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
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Fim da Digest pgbr-geral, volume 22, assunto 65
***********************************************
------------------------------------------------------------------------------
_______________________________________________
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