对disable
和所有constraints
的查询是什么,如foreign keys
、primary keys
,但保留uniques
?
PostgreSQL一般不允许禁用约束。只能通过禁用用于实现外键的相关触发器来禁用外键约束。
请参阅https://www.postgresql.org/docs/12/sql-altertable.html#SQL-可替换注释
DISABLE/ENABLE[复制|始终]触发器
可以禁用或启用由名称或全部指定的单个触发器表上的触发器,或仅用户触发器(此选项不包括内部生成的约束触发器,例如使用的那些实现外键约束或可延迟唯一性,以及排除约束(。禁用或启用内部生成约束触发器需要超级用户权限;应该这样做注意,因为约束的完整性当然不能如果触发器未执行,则保证。