3deferrable用途

3.1物化视图

物化视图(快照),这是它的主要用途。这些视图会使用延迟约束来进行视图刷新。在刷新物化视图的过程中,可能会破坏完整性,而且将不能逐句检验约束。但到执行COMMIT时,数据完整性就没问题了,而且能满足约束。没有延迟约束,物化视图的约束可能会使刷新过程不能成功进行。

3.2级联更新

当预测是否需要更新父/子关系中的主键时,它有助于级联更新。看一下实际的例子:

SQL> create table t(tno number(10) constraint pk_t_tno primary key, tname varchar2(20));

SQL> create table s(sno number(10) constraint pk_s_tno primary key, sname varchar2(20), tno number(10));

SQL> alter table s add constraint fk_s_tno foreign key (tno) references t(tno);

SQL> insert into t values(1,'yuechaotian');

SQL> insert into t values(2,'tianyuechao');

SQL> commit;

SQL> insert into s values(1,'stu_1', 1);

SQL> insert into s values(2,'stu_2', 1);

SQL> commit;

SQL> update t set tno=22 where tno=2;

SQL> update t set tno=11 where tno=1;

update t set tno=11 where tno=1

ORA-02292:违反完整约束条件(MYHR.FK_S_TNO) -已找到子记录

SQL> select * from t;

TNO TNAME

----------- --------------------

1 yuechaotian

22 tianyuechao

SQL> select *from s;

SNO SNAMETNO

----------- -------------------- -----------

1 stu_11

2 stu_21

SQL> rollback;

SQL> alter table s drop constraint fk_s_tno;

SQL> alter table s add constraint fk_s_tno foreign key (tno) references t(tno) deferrable initially immediate;

SQL> select * from t;

TNO TNAME

----------- --------------------

1 yuechaotian

2 tianyuechao

SQL> select * from s;

SNO SNAMETNO

----------- -------------------- -----------

1 stu_11

2 stu_21

SQL> set constraint fk_s_tno deferred;

Constraints set

SQL> update t set tno=22 where tno=2;

SQL> update t set tno=11 where tno=1;

SQL> update s set tno = 11 where tno = 1;

SQL> commit;

SQL> select * from t;

TNO TNAME

----------- --------------------

11 yuechaotian

22 tianyuechao

SQL> select * from s;

SNO SNAMETNO

----------- -------------------- -----------

1 stu_111

2 stu_211

SQL> select a.constraint_name, a.deferrable, a.deferred from user_constraints a where a.constraint_name like '%TNO%';

CONSTRAINT_NAMEDEFERRABLEDEFERRED

------------------------------ -------------- ---------

FK_S_TNODEFERRABLEIMMEDIATE

PK_S_TNONOT DEFERRABLE IMMEDIATE

PK_T_TNONOT DEFERRABLE IMMEDIATE

oracle延迟约束不起作用,Oracle可延迟约束Deferable的使用相关推荐

  1. fpga电平约束有什么作用_Xilinx FPGA的约束设计和时序分析总结

    欢迎FPGA工程师加入官方微信技术群 点击蓝字关注我们FPGA之家-中国最好最大的FPGA纯工程师社群 在进行FPGA的设计时,经常会需要在综合.实现的阶段添加约束,以便能够控制综合.实现过程,使设计 ...

  2. oracle中创建事件的作用,Oracle常见等待事件说明(二)-direct path read/write

    与直接读取相关联的等待事件.当ORACLE将数据块直接读入会话的PGA(进程全局区)中,同时绕过SGA(系统全局区).PGA中的数据并不和其他的会话共享.即表明,读入的这部分数据该会话独自使用,不放于 ...

  3. oracle数据库物化视图的作用,Oracle物化视图的用法与总结

    物化视图(material view)是什么? 物化视图是包括一个查询结果的数据库对象,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表. 物化视图存储基于远程表的数据,也可以称为快照(类 ...

  4. oracle数据库中spool的作用,Oracle中Spool命令如何使用 Oracle中Spool命令使用方法

    Oracle中Spool命令如何使用?本篇文章小编给大家分享一下Oracle中Spool命令使用方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 方法/步骤 首先需要明白 ...

  5. oracle统计信息收集的作用,oracle 11g 收集统计信息的新特点介绍

    对组合列创建统计信息 --检查表结构 select * from scott.emp where 1=2; --创建虚拟列 会输出虚拟列名 select dbms_stats.create_exten ...

  6. oracle中exist什么意思,oracle中not exists 是什么意思 , oracle数据库中exists的作用

    导航:网站首页 > oracle中not exists 是什么意思 , oracle数据库中exists的作用 oracle中not exists 是什么意思 , oracle数据库中exist ...

  7. oracle的约束什么作用,Oracle数据库知识之约束

    1.先了解什么是约束 约束是表级的强制约定.有5种约束:not null , unique, primary key ,foreign key, check 2.表级约束和列级约束 作用范围: 列级约 ...

  8. Oracle 11gR2 Patchset 不同文件作用 说明

    在Oracle 10g 版本的Patchset里面,只有一个文件Disk1.  到了Oracle 11.2.0.2和11.2.0.3 的Patchset 大小是剧增.11.2.0.2 和 11.2.0 ...

  9. 资源放送丨《Oracle聚簇因子的作用 - 2020云和恩墨大讲堂》PPT视频

    前段时间,墨天轮分享了直播<Oracle聚簇因子的作用 - 2020云和恩墨大讲堂>,在这里我们共享一下PPT和视频,供大家参考学习. 本分享从索引的结构和特点入题,引出聚簇因子的作用,并 ...

最新文章

  1. 江西理工大学计算机管理技术期末复习(wangzhendong)网络管理与维护
  2. PHP下解决Cannot find module (IP-MIB)的问题
  3. Excel自定义函数使用正则表达式详解
  4. PHP项目中,记录错误日志
  5. P3306-[SDOI2013]随机数生成器【BSGS】
  6. 用python语言模拟微信红包_python 模拟微信抢红包 基础语法实现demo
  7. IPython notebook(Jupyter Notebook) 的使用
  8. 推荐一个自动写paper的软件,让IEEE吐血泪奔
  9. RabbitMQ SSL安全认证
  10. static import java_Java 静态导入Static import
  11. Chrome浏览器扩展:bilibili哔哩哔哩视频下载助手 2.1.5_0
  12. 绑定挂载mount --bind介绍
  13. 使用windows自带的测速工具WinSat对移动硬盘进行测速
  14. vue项目无法在IE浏览器中显示
  15. ningx突然403权限拒绝解决方案
  16. JIRA REST API调用方式
  17. Codeforces Round #702 (Div. 3)ABCEF
  18. 分布式和大数据有什么区别?
  19. Javaweb微专业第二十讲-----发送邮件(预告)
  20. 为什么说手机短信网址要慎点?该如何辨别

热门文章

  1. 红橙Darren视频笔记 仿QQ步数计数view 画笔的使用
  2. python人工智能github的一些跑程序技巧(持续更新~)
  3. IDEA打jar包时出现manifest.mf already exists in vfs解决办法
  4. 二级菜单打开一个时其他关闭_简介——菜单和工具栏
  5. 怎么才能升级成鸿蒙系统,怎么能升级成鸿蒙系统
  6. postman本地请求ip地址变成ipv6_华为认证-IPv6技术-ICMPv6介绍
  7. Python练习:百分制到五级制的转换
  8. 内存条上面参数详解_价格极低的国产颗粒内存条:光威弈系列Pro评测,超频表现超稳定...
  9. 计算机三级考试监控回放,09年计算机三级辅导:禁用Vista下的硬盘监控警告
  10. zstack信道_Zigbee信道原理