Trong PostgreSQL 8.x để vô hiệu hóa trigger tôi làm điều gì đó như:Làm cách nào để tắt trình kích hoạt trong PostgreSQL 9?
ALTER TABLE table DISABLE TRIGGER ALL;
Khi tôi làm điều này trong PostgreSQL 9 tôi nhận được như sau:
my_database=> ALTER TABLE my_table DISABLE TRIGGER ALL;
ERROR: permission denied: "RI_ConstraintTrigger_25366" is a system trigger
PS: Bảng này được tạo ra bởi người sử dụng đang chạy lệnh này.
Bất kỳ manh mối nào về điều này?
@ André: Hành vi này giống như pg ** 8.1 **. (Và đừng quên bảng ALTER TABLE ENABLE TRIGGER USER; 'sau đó, btw.) –
Xin chào, cảm ơn bạn đã trả lời. Tôi chỉ có thể vô hiệu hóa nếu tôi làm "TRIGGER ALL" với người dùng Postgres, "TRIGGER USER" không tắt Trình kích hoạt. –
Vâng, nó sẽ không vô hiệu hóa các ràng buộc ràng buộc không, bởi vì sau đó các ràng buộc của bạn sẽ không được thực thi. Nếu bạn muốn vô hiệu hóa chúng thì bạn sẽ phải là một siêu người dùng. – TomH