我需要将测试数据加载到表中,我想禁用所有可能的约束,我已经找到了如何全局关闭外键,但我需要禁用所有约束,PK、FK、CHK、UNIQ 等。是否有可能在全球范围内做吗?当然,在那之后我必须调整所有约束。
使用以下命令禁用约束:
-- disable UNIQ, PK, ...
ALTER TABLE <tablename> DISABLE KEYS;
-- diable FK
SET FOREIGN_KEY_CHECKS=0;
Run Code Online (Sandbox Code Playgroud)
例如,检查此网站以获取更多示例。恢复:
SET FOREIGN_KEY_CHECKS=1;
ALTER TABLE <tablename> ENABLE KEYS;
Run Code Online (Sandbox Code Playgroud)
来自参考:
ps:来自InnoDB性能调优技巧
SET autocommit=0;
SET unique_checks=0;
SET foreign_key_checks=0;
Run Code Online (Sandbox Code Playgroud)