Re: Field collection in trigger
От | darren@crystalballinc.com |
---|---|
Тема | Re: Field collection in trigger |
Дата | |
Msg-id | Pine.LNX.4.44.0309011622550.23940-100000@thread.crystalballinc.com обсуждение исходный текст |
Ответ на | Re: Field collection in trigger (Josué Maldonado <josue@lamundial.hn>) |
Список | pgsql-general |
Try the following using pltcl CREATE OR REPLACE FUNCTION foo() RETURNS TRIGGER AS ' foreach id [array names OLD] { if { $OLD($id) != $NEW($id) { # do your logging in here or flags whatever you wish } } return [array get NEW] ' LANGUAGE 'pltcl'; HTH Darren On Mon, 1 Sep 2003, Josué Maldonado wrote: > Hi Doug, > > Thanks for anwsers, do you have some sample code or URL where I can get > more info on this. I don't know C or Perl but really need to get this done. > > Thanks, > > Doug McNaught wrote: > > >Josué Maldonado <josue@lamundial.hn> writes: > > > > > > > >>Hello list, > >> > >>First of all, excuse me if this is not the right place to ask my question. > >> > >>Is there a way in postgresql to loop to all the fields of a given > >>table and compare the OLD and NEW value for each field. I need to make > >>an audit table that must contain only the fields changed after and > >>insert/update. > >> > >> > > > >You should be able to do this in a Perl or C trigger. It can't be > >done in PL/pgSQL without writing a custom trigger for each table that > >hard-codes all the field names. > > > >-Doug > > > >---------------------------(end of broadcast)--------------------------- > >TIP 3: if posting/reading through Usenet, please send an appropriate > > subscribe-nomail command to majordomo@postgresql.org 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 > -- Darren Ferguson
В списке pgsql-general по дате отправления: