'plpgsql' oddity - Mailing list pgsql-general

From Mitch Vincent
Subject 'plpgsql' oddity
Date
Msg-id 008701c084dc$9d0cb0a0$0200000a@windows
Whole thread Raw
Responses Re: 'plpgsql' oddity  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: 'plpgsql' oddity  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
List pgsql-general
This is probably something I'm doing (or not doing) but I can't seem to
figure out what it is... I have been playing with this little function :

CREATE FUNCTION invoice_payment() RETURNS OPAQUE AS '
BEGIN

   UPDATE invoice_master SET total = total - NEW.amount,updated = ''now''
WHERE invoice_id = NEW.invoice_id;

   RETURN NEW;

END;
' LANGUAGE 'plpgsql';


.. and this trigger :

CREATE TRIGGER invoice_trigger AFTER INSERT ON invoice_payments
FOR EACH ROW EXECUTE PROCEDURE invoice_payment();


The first field to be updated (total to total - amount) works just fine but
anything I put after that simply doesn't happen, it's very strange.. In the
above example, total gets updated but the field 'updated' does not, yet the
query does run (and correctly as far as the total field goes) so I'm
assuming there isn't a parse error or anything..

Can someone smack me with a clue stick?

Thanks!

-Mitch


pgsql-general by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: OID/XID allocation (was Re: is PG able to handle a >500 GB Da tabase?)
Next
From: Justin Clift
Date:
Subject: Re: postgres memory management