我有一个表,其中包含一些SQL错误数据。该表与其他表有很多关系,而其他表有很多数据,因此当我要删除不良数据时,它的运行速度非常慢,需要花费大量时间。我认为导致此问题的原因是外键约束。主要问题是如何从一个表中禁用所有外键约束。
答案 0 :(得分:-1)
您必须禁用检查约束:
SET FOREIGN_KEY_CHECKS=0;
确保在执行命令后将其退回:
SET FOREIGN_KEY_CHECKS=1;
禁用一个表的约束:
alter table
table_name
DISABLE constraint
constraint_name;
这里是一个例子:
select 'alter table '||table_name||' disable constraint '||constraint_name||';' from user_constraints;