一、禁止所有的外键约束

在pl/sql developer下执行如下语句:
SELECT 'ALTER TABLE ' || table_name || ' disable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';
把查询出来的结果拷出来在pl/sql developer时执行。

先看看user_constraints是什么

user_constraints是表约束的视图,描述的是约束类型(constraint_type)是什么,属于哪些表(table_name),如果约束的类型为R(外键)的话,那么r_constraint_name字段存放的就是被引用主表中的主键约束名。

先看看user_cons_columns是什么

user_cons_columns是表约束字段的视图,说明表中的和约束相关的列参与了哪些约束。这些约束有主键约束,外键约束,索引约束.
  两者可以通过(owner,constraint_name,table_name)关联

select 
a.owner 外键拥有者, 
a.table_name 外键表, 
substr(c.column_name,1,127) 外键列, 
b.owner 主键拥有者, 
b.table_name 主键表, 
substr(d.column_name,1,127) 主键列 
from 
user_constraints a, 
user_constraints b, 
user_cons_columns c, 
user_cons_columns d 
where 
    a.r_constraint_name=b.constraint_name 
and a.constraint_type='R' 
and b.constraint_type='P' 
and a.r_owner=b.owner 
and a.constraint_name=c.constraint_name 
and b.constraint_name=d.constraint_name 
and a.owner=c.owner 
and a.table_name=c.table_name 
and b.owner=d.owner 
and b.table_name=d.table_name

用delete或truncate删除用户所有表的内容

SELECT 'DELETE FROM '|| table_name || ';' FROM USER_TABLES
ORDER BY TABLE_NAME;

SELECT 'TRUNCATE TABLE '|| table_name || ';' FROM USER_TABLES
ORDER BY TABLE_NAME;
用第一步类似的方法操作。要注意的一点是,若表的数据有触发器相关联,只能用truncate语句,不过truncate语句不能回滚,所以时要注意

三、把已经禁止的外键打开

SELECT 'ALTER TABLE ' || table_name || ' enable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';

查出来的表结果是执行语句:如下

1 TRUNCATE TABLE A;
2 TRUNCATE TABLE ACCEPT_SN;
3 TRUNCATE TABLE B;

最新文章

  1. wcf用svcutil导出泛型的元数据
  2. lstm
  3. js获取select改变事件
  4. 2014多校第五场1010 || HDU 4920 Matrix multiplication(矩阵乘法优化)
  5. php 文件缓存
  6. UVA 11111-Generalized Matrioshkas(栈)
  7. 利用Eclipse中的Maven构建Web项目(三)
  8. Codechef:Path Triples On Tree
  9. 关闭PHPStorm 2017.1 中的新功能中的参数提示( Parameter hints )
  10. app操作的一些命令
  11. Java实现数据库的读写分离
  12. u-boot移植(十三)---代码修改---裁剪及环境变量 二
  13. C# 关键字Event
  14. java中使用MD5进行加密 BASE64Encoder 编码
  15. MyEclips 2017/2018 (mac 版)安装与破解
  16. 【BZOJ1226】学校食堂(动态规划,状态压缩)
  17. 深入理解jQuery插件开发总结(三)
  18. CentOS7 使用chrony搭建集群中的时间同步服务
  19. 记录使用Buildbot遇到的坑
  20. 51Nod - 1179

热门文章

  1. Get请求编码
  2. c/c++面试题(4)字符串翻转/打印任意进制格式/类型转换
  3. java中Collection类及其子类
  4. Newtonsoft.Json(C#处理json)
  5. Asp.net useful tools
  6. 【LeetCode OJ】Convert Sorted List to Binary Search Tree
  7. bigworld源码分析(4)——BaseAppMgr分析
  8. [翻译]lpeg入门教程
  9. find 命令的参数详解
  10. 正确使用List.toArray()(转)