我想要实现PostgreSQL表的更改历史记录。该表定义如下:
CREATE TABLE "ps_counters"
(
"psid" integer NOT NULL,
"counter" bigint[] NOT NULL
);
我希望历史记录表格的样子像这样:
CREATE TABLE "ps_counters_history"
(
"timestamp" timestamp NOT NULL,
"psid" integer NOT NULL,
"counter" bigint[] NOT NULL
);
我需要一个触发器和一个存储过程,当 ps_counters
表中有任何变更(插入或更新)时,将其插入到 ps_counters_history
表中。但另外为了防止 ps_counters_history
表变得过大,我希望在每个月对 ps_counters_history
表进行分区。