From: | Michael Olivier <mo(at)local2me(dot)com> |
---|---|
To: | "pgsql-sql(at)postgreSQL(dot)org" <pgsql-sql(at)postgreSQL(dot)org> |
Subject: | few questions about rules: timestamp, new.oid |
Date: | 1999-08-02 21:04:58 |
Message-ID: | 37A607FA.E9727ABD@local2me.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi,
I am setting up rules to track changes to some tables, in PG 6.4.2-3 (RH
Linux 6.0) ... and have two questions:
1. I'm storing a datetime timestamp for when the change was entered into
my changes table, but the timestamp doesn't change with subsequent
tests:
create rule users_modify_rule as on update to users do
insert into changes (table_name, change_time, ref_oid, type)
values ('users', 'now', current.oid, 'update');
dmtest=> select * from changes;
table_name|change_time |ref_oid|ref_name|type
----------+----------------------------+-------+--------+------
users |Mon Aug 02 13:52:34 1999 PDT| 990398| |update
users |Mon Aug 02 13:52:34 1999 PDT| 990398| |update
users |Mon Aug 02 13:52:34 1999 PDT| 990398| |update
users |Mon Aug 02 13:52:34 1999 PDT| 990398| |update
users |Mon Aug 02 13:52:34 1999 PDT| 990398| |update
(5 rows)
2. How can I get the oid of a record being inserted? Using new.oid
isn't getting it for me... the field in my changes table remains
blank...
create rule users_add_rule as on insert to users do
insert into changes (table_name, change_time, ref_oid, type)
values ('users', 'now', new.oid, 'insert');
Getting some other field, like new.acctname, does work...
Thanks,
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | maxsbox | 1999-08-03 06:16:19 | Re: [SQL] Using dates |
Previous Message | tjk@tksoft.com | 1999-08-02 20:44:25 | Re: [SQL] MVCC and concurrent clients |