我正在尝试删除多个触发器但遇到SQL错误:
PG::Error: ERROR: syntax error at or near ";"
LINE 1: DROP TRIGGER rr_admin_reports;
这是我在rails中执行的sql:
sql = <<-SQL
DROP TRIGGER rr_admin_reports;
DROP TRIGGER rr_apps;
DROP TRIGGER rr_attachments;
SQL
有没有办法轻松删除很长的触发器列表?感谢
答案 0 :(得分:10)
DROP TRIGGER rr_admin_reports ON yourTable;
引用PostgreSQL文档:
PostgreSQL中的DROP TRIGGER语句与SQL标准不兼容。在SQL标准中,触发器名称不是表的本地,因此该命令只是DROP TRIGGER名称。
http://www.postgresql.org/docs/7.4/static/sql-droptrigger.html