回答

收藏

创建或更换触发器postgres

技术问答 技术问答 459 人阅读 | 0 人回复 | 2023-09-14

我想创建或替换 postgres表的触发器。但是,没有这样的触发器。sql表达式。/ e; K  G+ ]! h* g
我可以先做一个 DROP TRIGGER IFEXISTS”(http://www.postgresql.org/docs/9.5/static/sql-" {) @1 d/ A9 Y
droptrigger.html)。; e& z0 r( Y3 x( ]/ O# B
我的问题是:
3 Y' G: n9 S/ f: ][ol]是否有比(DROP CREATE推荐/更好地选择触发器)
6 u: `0 `6 N1 T为什么没有这样的创建或替换触发器(这可能意味着我不应该这样做)[/ol]请注意,Create or ReplaceTrigger在oracle(https://docs.oracle.com/cd/B19306_01/appdev.102/b14251/adfns_triggers.htm)中有一个“
& _, N5 ~+ Y! A: r# C- g[ol]这样的命令计划用于吗?Postgres?[/ol]                                                               
8 `8 V8 B$ ~6 n  u    解决方案:                                                                3 |2 M5 _" M$ V3 o3 s' j
                                                                PostgreSQL有事务DDL,所以BEGIN > DROP > CREATE > COMMIT等价于CREATE OR REPLACE
( I, n+ K" H' z7 ]  S+ @这是一篇有关postgre的事务性DDL与其他系统(例如oracle)比较好的文章。9 @$ i3 ^$ ^3 `! }, }
目前触发器postgres不包括添加计划功能REPLACE语法。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则