是否可以在postgres中在CREATE TABLE上有一个触发器,它将为新创建的表创建触发器?
例如,
CREATE TABLE base_abc(
...
) inherits( base );
我想自动将触发器添加到新创建的表base_abc
,例如,这将根据列名计算列值。
同样,是否可以在ALTER TABLE上触发,以便可以删除并重新创建触发器?
有关背景信息,请参阅what is best way to extend postgresql to index json objects?
答案 0 :(得分:1)
不要认为有一种方法可以使用PostgreSQL内置函数来实现这样的“触发器”,但你绝对可以编写一个能够做你想做的存储函数 - 即创建派生表然后在该表上触发
您也可以为ALTERing表写一个。
答案 1 :(得分:1)
在谷歌搜索时发现了这个问题,由于事情变了,决定添加现代答案。从9.3 we have event triggers开始。阅读online docs了解更多信息。
您的要求可以通过类似的方式完成:
private static void Main(string[] args)
{
Logger.Set("Log", true, 10);
while (true)
{
Logger.Log("anything");
}
}
请记住,这只是一个可行的示例,请不要盲目复制/粘贴