简短的问题......
必须使用DROP TRIGGER操作: https://www.postgresql.org/docs/9.1/static/sql-droptrigger.html
或者只是删除pg_trigger表中的条目就足够了吗?
答案 0 :(得分:2)
正确的方法是唯一的方法。即使从drop trigger
删除似乎工作正常,也请使用pg_trigger
。事实上它没有。手动删除pg_trigger
中的条目后,您可以得到错误(不是立即,但是当您最后的预期时),如下所示:
错误:无法找到触发器123456的元组
这是因为Postgres还在pg_depend
中的表格中存储了有关触发器的信息。作为示例性结果,您将无法删除该表。
答案 1 :(得分:1)
你肯定应该使用DROP TRIGGER
语句。
这是标准的便携式。
答案 2 :(得分:1)
请勿从pg_trigger中删除。此外,在删除触发器之前,必须明确删除触发器所基于的FUNCTION。