有没有办法在添加列时创建触发器?

时间:2015-02-27 05:54:31

标签: postgresql ddl-trigger

我正在使用postgres。我正处于发展的中间。我需要创建表ABC的副本。我将它命名为XYZ。我试过'创建表XYZ()继承(ABC)'。我工作正常但是当我在XYZ上插入值时,表ABC也填充(虚拟)。当我运行查询类似于'select * from ABC where id = 1'时,我得到重复值。当我运行查询时,我得到了正确的记录'select * from ABC from id = 1'。

这是,我不想使用'only'。所以,我不认为继承是我需要的。我只是想问一下,当我改变(添加列)ABC时,是否有办法在XYZ上自动添加列?

我不想为ABC和XYZ创建两个alter的查询。我需要两个表始终具有相同的列。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您所谈论的触发器通常称为DDL触发器。在PostgreSQL中,它们被称为event triggers。我不确定你是否可以在PostgreSQL事件触发器中执行alter table语句。

我不相信这是真正您正在寻找的解决方案。我想你可能正处于X-Y problem的中间。