Melvin,
May I point out that the manual states :"TRUNCATE quickly removes all rows from a set of tables. It has the same effect as an unqualified DELETE on each table"
On 22 July 2015 at 14:03, Melvin Davidson <melvin6925@xxxxxxxxx> wrote:
Actually, if you use a TRIGGER instead of rule, you can handle this.I suggest you review carefully.
The manual states event can be:INSERT UPDATE [ OF column_name [, ... ] ] DELETE TRUNCATE <-----http://www.postgresql.org/docs/9.4/interactive/sql-createtrigger.htmlOn Wed, Jul 22, 2015 at 8:53 AM, Tim Smith <randomdev4+postgres@xxxxxxxxx> wrote:Hi,
I very much hope this is an accidental bug rather than a deliberate feature !
PostgreSQL 9.4.4
create rule no_auditupd as on update to app_security.app_audit do
instead nothing;
create rule no_auditdel as on delete to app_security.app_audit do
instead nothing;
\d+ app_security.app_audit
<snip>
Rules:
no_auditdel AS
ON DELETE TO app_security.app_audit DO INSTEAD NOTHING
no_auditupd AS
ON UPDATE TO app_security.app_audit DO INSTEAD NOTHING
The truncate trashes the whole table ;-(
According to the FabulousManual(TM) :
event : The event is one of SELECT, INSERT, UPDATE, or DELETE.
Thus I can't create a rule to "do nothing" on truncates, thus I am stuck !
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
--Melvin Davidson
I reserve the right to fantasize. Whether or not you
wish to share my fantasy is entirely up to you.