使用SQL将行插入历史表的简写

时间:2016-05-18 09:11:05

标签: sql postgresql

我有一个触发器,可以在更新或删除到历史记录表时复制一行。

截至目前我正在做:

INSERT INTO history (column_x, column_y, column_z) VALUES (X, Y, Z);

是否可以用以下内容进行速记:

INSERT INTO history VALUES (OLD)

以上不起作用,但它可以让我知道我在寻找什么。 这些列完全符合我用以下内容创建历史记录表:

CREATE TABLE history (LIKE original)

1 个答案:

答案 0 :(得分:0)

您应该在表格中定义一些primary key。然后你可以做insert select声明:

INSERT INTO history
SELECT * FROM notHistory WHERE ID = @ID