我想创建或替换 postgres表的触发器。但是,没有这样的触发器。sql表达式。2 b a* D% c" n3 M$ K* u
我可以先做一个 DROP TRIGGER IFEXISTS”(http://www.postgresql.org/docs/9.5/static/sql-* E j0 a/ n& |- r' f S
droptrigger.html)。1 H( d0 m3 K& Q' O. A: M" d
我的问题是:$ x [7 x& v7 i+ f
[ol]是否有比(DROP CREATE推荐/更好地选择触发器)8 ?! E, H0 b5 Z1 y4 z3 g ]! I
为什么没有这样的创建或替换触发器(这可能意味着我不应该这样做)[/ol]请注意,Create or ReplaceTrigger在oracle(https://docs.oracle.com/cd/B19306_01/appdev.102/b14251/adfns_triggers.htm)中有一个“0 o h- q3 k; \/ g) M# ]
[ol]这样的命令计划用于吗?Postgres?[/ol] 2 ?5 |6 y b: h3 K# w$ Y 解决方案: ' W! J5 M* ~) P8 z6 | g ~
PostgreSQL有事务DDL,所以BEGIN > DROP > CREATE > COMMIT等价于CREATE OR REPLACE " _" j2 d' ^+ a# L这是一篇有关postgre的事务性DDL与其他系统(例如oracle)比较好的文章。3 S1 A0 n& p3 W# {( ?% h# r
目前触发器postgres不包括添加计划功能REPLACE语法。