我正在使用PostgreSQL数据库。我编写了一个.rb文件,用于操作数据库中的数据。我希望能够记录此文件引出的所有SQL INSERT和DELETE。我该怎么做?
答案 0 :(得分:2)
在脚本开始时,创建所需的临时表,并添加两个触发器,一个在插入,一个在删除,并相应地为每行触发。它也适用于规则:
create temporary table foo_log_ins (like foo);
create rule log_foo_ins as
on insert to foo
do also
insert into foo_log select new.*;
create temporary table foo_log_del (like foo);
create rule log_foo_del as
on delete to foo
do also
insert into foo_log_del select old.*;