Here is a example of a trigger function
CREATE OR REPLACE FUNCTION public.ipinfo_trg()
RETURNS trigger AS
'DECLARE
dhcp varchar:=\'DHCP\';
rtype varchar:=\'RAS\';
BEGIN
if NEW.ipaddress != dhcp then
if OLD.ipaddress != dhcp then
if OLD.atype != rtype then
insert into vpnip(ipaddress)
values(inet(OLD.ipaddress));
else
insert into rasip(ipaddress)
values(inet(OLD.ipaddress));
end if;
else end if;
else
if OLD.ipaddress != dhcp then
if OLD.atype != rtype then
insert into vpnip(ipaddress)
values(inet(OLD.ipaddress));
else
insert into rasip(ipaddress)
values(inet(OLD.ipaddress));
end if;
else end if;
END IF;
Return NEW;
END;
'
LANGUAGE 'plpgsql' VOLATILE;
Here is a example of how to call the trigger function from your table
CREATE TRIGGER update_ipinfo_trg
AFTER UPDATE
ON public.ipinfo
FOR EACH ROW
EXECUTE PROCEDURE public.ipinfo_trg();
-----Original Message-----
From: John DeSoi [mailto:[EMAIL PROTECTED]
Sent: Friday, December 17, 2004 10:38 AM
To: Richard Sydney-Smith
Cc: [EMAIL PROTECTED]
Subject: Re: [SQL] Table History
On Dec 17, 2004, at 1:23 AM, Richard Sydney-Smith wrote:
> I expect this has been done MANY times and I wonder if a general
> purpose trigger exists or if not then can someone point me to an
> example set of triggers?
I'm not aware of a "general purpose" trigger for this. If you just want
some extra trigger examples other than what is in the documentation,
there is a test file in the distribution with quite a few:
src/test/regress/sql/plpgsql.sql
Best,
John DeSoi, Ph.D.
http://pgedit.com/
Power Tools for PostgreSQL
---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to [EMAIL PROTECTED] so that your
message can get through to the mailing list cleanly
---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
joining column's datatypes do not match