Ich versuche, mehrere Trigger zu entfernen, bekomme aber einen SQL-Fehler:
PG::Error: ERROR: syntax error at or near ";"
LINE 1: DROP TRIGGER rr_admin_reports;
Hier ist die SQL, die ich in Schienen ausführte:
sql = <<-SQL
DROP TRIGGER rr_admin_reports;
DROP TRIGGER rr_apps;
DROP TRIGGER rr_attachments;
SQL
Gibt es eine Möglichkeit, eine lange Liste von Triggern leicht zu löschen? Vielen Dank
Antworten:
10 für die Antwort № 1DROP TRIGGER rr_admin_reports ON yourTable;
Zitat aus der PostgreSQL-Dokumentation:
Die DROP TRIGGER-Anweisung in PostgreSQL ist mit dem SQL-Standard nicht kompatibel. Im SQL-Standard sind Triggernamen nicht lokal für Tabellen, daher lautet der Befehl einfach DROP TRIGGER name.
http://www.postgresql.org/docs/7.4/static/sql-droptrigger.html