您好,欢迎访问一九零五行业门户网

数据库使用truncate清理很多表时碰到外键约束时怎么快速解决

问题处理思路: 1. 先将数据库中涉及到外键约束的表置为无效状态 2.待清除完所有表数据后再将外键约束的表置为可用状态 具体实现脚本: declare begin for vv_sql in (select alter table || table_name || disable constraint || constraint_name alter_sql
问题处理思路:
1. 先将数据库中涉及到外键约束的表置为无效状态
2.待清除完所有表数据后再将外键约束的表置为可用状态
具体实现脚本:
declare
begin
for vv_sql in (select 'alter table '|| table_name ||' disable constraint ' || constraint_name alter_sql from user_constraints
where constraint_type = 'r')
loop
execute immediate vv_sql.alter_sql;
end loop;
execute immediate 'truncate table 表名;
................. ---此处省略,可用写多个executesql语句
for vv_sql in (select 'alter table '|| table_name ||' enable constraint ' || constraint_name alter_sql from user_constraints
where constraint_type = 'r')
loop
execute immediate vv_sql.alter_sql;
end loop;
end;
/
其它类似信息

推荐信息