"James B. Byrne" <byrnejb@harte-lyne.ca> writes:
> I am beginning to migrate some functionality from an application
> prototype into the DBMS. One of these elements is time stamping row
> insertions and updates.
> I have been reading about rules, functions and triggers in regards
> to this issue. So, of course, now I have myself completely
> befuddled. From what I can determine from the documentation, it
> makes little difference to the DBMS whether I set a rule on insert
> and one on update for each table or define a function and set a
> trigger for insert or update on each table.
> If this is indeed the case then which way is the preferred method?
A trigger is very much preferred. Rules are not as easy as they look.
Triggers are a bit more notationally cumbersome, but they tend to
do what you expect without any surprises.
For the problem you mention, a stripped-down version of the first
example here is what you want:
http://www.postgresql.org/docs/8.3/static/plpgsql-trigger.html
regards, tom lane