I'm trying to set up some basic rules to log inserts, updates, and
deletes to tables in an inheritance hierarchy (by inserting records
into a log table), and I've got a couple of questions.
(1) Is it possible to create a rule on a base table and have it
operate for all derived tables? I'd like to just create 3 rules
(insert/update/delete) on the base table and have them apply to all
inherited tables. Can this be done?
(2) I've got a very simple update rule-- create rule log_updates as on
update to foo do insert into audit_log(table_oid, id, log_what) values
(foo.tableoid, NEW.foo_id, 'U'); I had hoped that this would create a
single entry in my audit_log table for each row updated. However, it
seems to fire for each record in the "foo" table, even if the update
affected only one row! What am I doing wrong?
Any help would be very much appreciated. Thanks!
Tim Perrigo