什么是外键:
如果一个实体的某个字段指向另一个实体的主键,就称为外键。被指向的实体,称之为主实体(主表),也叫父实体(父表).负责指向的实体,称之为从实体(从表),也叫子实体(子表)
外键的作用:
为了一张表记录的数据不要太过冗余。
保持数据的一致性、完整性
我们很多客户库中,许多表都没有外键索引的存在,所以一般一直选择禁用外键(DISABLED).
当然只有在外键不需要更新或删除时才不需要建立索引,如果需要这些条件,插入数据时会锁住整张表,而不是特定的行,这样高并发时就有性能问题。
禁用外键脚本
BEGINfor c in
(select 'alter table "' || t.owner || '".' || t.table_name ||' disable constraint ' || t.constraint_name as v_sqlfrom dba_constraints twhere t.constraint_type = 'R'and owner in(select a.USERNAMEfrom v$session awhere a.SID in (select sid from v$mystat where rownum = 1))
) loopDBMS_OUTPUT.PUT_LINE(C.V_SQL);beginEXECUTE IMMEDIATE c.v_sql;exception when others thendbms_output.put_line(sqlerrm);end;end loop;end;/
禁用完成后查看
select * from user_constraints where STATUS='DISABLED';

Oracle外键禁用相关推荐

  1. oracle外键约束强行insert,oracle 禁用外键约束

    1.ORACLE数据库中的外键约束名都在表user_constraints中可以查到.其中constraint_type='R'表示是外键约束. 2.启用外键约束的命令为:alter table ta ...

  2. 小议Oracle外键约束修改行为

    小议Oracle外键约束修改行为(一) Oracle的外键用来限制子表中参考的字段的值,必须在主表中存在.而且在主表的记录发生变化导致外键参考唯一约束值发生了变化时,定义了一系列的动作. 在SQL92 ...

  3. oracle能不能改外键属性,CSS_小议Oracle外键约束修改行为(五), Oracle的外键用来限制子表 - phpStudy...

    小议Oracle外键约束修改行为(五) Oracle的外键用来限制子表中参考的字段的值,必须在主表中存在.而且在主表的记录发生变化导致外键参考唯一约束值发生了变化时,定义了一系列的动作. 前面几篇文章 ...

  4. oracle中删除级联方法,Oracle 外键级联删除

    Oracle 外键级联删除 日期:2010年5月22日 作者: 近来软件系统中要删除一条记载,就要关联到同时删除好多张表,它们之间还存在着约束联络.所以思索到在树立表时加上约束联络,细致内容如下: S ...

  5. oracle 建立外键 引用条件约束 不能添加,Oracle外键约束(Foreign Key)的几个操作选项...

    关系型数据库是以数据表和关系作为两大对象基础.数据表是以二维关系将数据组织在DBMS中,而关系建立数据表之间的关联,搭建现实对象模型.主外键是任何数据库系统都需存在的约束对象,从对象模型中的业务逻辑加 ...

  6. oracle 外键约束 权限,ORACLE外键约束(FORIGEN KEY)

    外键约束的定义是,让另一张表的记录来约束自己.这里的另一张表就是主表. 当主表的记录删除时,我们可以跟随主表删除记录(ON DELETE CASCADE).或者相应字段设置为空(ON DELETE S ...

  7. oracle 外键 更新,Oracle外键级联删除与更新

    2012年Oracle:Oracle外键级联删除与更新 比来软件系统中要删除一标识表记标帜录,就要联系关系到同时删除良多若干好多张表,它们之间还存在着约束关系.所以考虑到在建树表时加上约束关系,具体内 ...

  8. oracle 外键约束不检查历史数据_如何一键禁用Oracle所有外键约束?

    概述 最近在转移数据库,进行数据导入的时候,遇到一件麻烦事,就是表间外键约束的存在,导致insert频频报错,批量执行sql语句又是顺序执行,手动输入的工作量又太大.所以这里考虑是不是可以把外键约束全 ...

  9. Oracle外键约束reference,oracle外键约束

    -- 创建测试主表. ID 是主键. CREATE TABLE test_main ( id      INT, value   VARCHAR(10), PRIMARY KEY(id) ); --  ...

最新文章

  1. 记录一些比较有趣的网站,来给自己的网站设计积累思想
  2. 洛谷 P1202 模拟 - 黑色星期五 Friday the Thirteenth
  3. Struts2配置文件中传递参数的一个小问题
  4. c语言链表不带头节点的排序,不带头结点的单向链表排序——插入排序(C语言)...
  5. layui select动态赋值_layui与 VUE 配合使用时动态渲染 select 坑
  6. iframe:获取iframe中的元素
  7. Ubuntu16.04刷机+装驱动
  8. intel 显卡驱动的节能设置(新版驱动)
  9. erlang中的ets和dets
  10. BZOJ 5109 [CodePlus 2017]大吉大利,晚上吃鸡!
  11. Java端实现JSHOP2的调用
  12. 微信-点链接进入公众号关注页
  13. 牛客月赛1-(青蛙旅行)-(卡特兰数)
  14. 用PIL制作黑白滤镜
  15. 翻译java语言的软件_java实现英文翻译程序
  16. B015 - 电阻电容电感检测仪
  17. 线上招生太难?教育行业裂变方案奉上
  18. ABP学习笔记:关于审计(Auditing)
  19. 第四十二期-ARM Linux内核的系统调用(2)
  20. Windows Subsystem for Linux安装与使用

热门文章

  1. Web安全Day1 - SQL注入实战攻防
  2. pwn_level0
  3. Tomcat下载步骤详细and简单
  4. HOOK 低层键盘消息---WH_KEYBOARD_LL
  5. Module-based visualization of large-scale graph network data【论文阅读】
  6. MaixBit初次上手配置教程
  7. 数据安全相关防御技术 确保安全合规
  8. 快速掌握差分进化算法
  9. Orcl 数据库 查询 版本号 方法
  10. 别让自证清白成为扶人者的梦魇