[每日一题] OCP1z0-047 :2013-08-18 禁用启用约束――主键与外键 ..................................61
正确答案:C
根据题意,测试结果如下:
1、创建表emp,并且设emp_no字段为主键,设mgr_no字段为外键。
gyj@MYDB> create table emp
2 (emp_no number(2) constraint emp_emp_no_pk primary key,
3 ename varchar2(15),
4 salary number(8,2),
5 mgr_no number(2) constraint emp_mgr_fk references emp); Table created.
2、禁用约束主键,同时也禁用了外键
gyj@MYDB> alter table emp disable constraint emp_emp_no_pk cascade; Table altered.
3、查约束主键与外键是否都被禁用了,确实都被DISABLED了
gyj@MYDB> col owner for a10
gyj@MYDB> select OWNER,CONSTRAINT_NAME, TABLE_NAME,STATUS from user_constraints where table_name='EMP'; OWNER CONSTRAINT_NAME TABLE_NAME STATUS
---------- ------------------------------ ------------------------------ --------
GYJ EMP_EMP_NO_PK EMP DISABLED
GYJ EMP_MGR_FK EMP DISABLED
4、启用约束主键
gyj@MYDB> alter table emp enable constraint emp_emp_no_pk; Table altered.
5、 查约束主键与外键是否都被禁用了,只有主键被禁用了。
gyj@MYDB> select OWNER,CONSTRAINT_NAME, TABLE_NAME,STATUS from user_constraints where table_name='EMP'; OWNER CONSTRAINT_NAME TABLE_NAME STATUS
---------- ------------------------------ ------------------------------ --------
GYJ EMP_EMP_NO_PK EMP ENABLED
GYJ EMP_MGR_FK EMP DISABLED
6、 启用约束外键
gyj@MYDB> alter table emp enable constraint emp_mgr_fk; Table altered.
7、此时约束外键也被禁用了
gyj@MYDB> select OWNER,CONSTRAINT_NAME, TABLE_NAME,STATUS from user_constraints where table_name='EMP'; OWNER CONSTRAINT_NAME TABLE_NAME STATUS
---------- ------------------------------ ------------------------------ --------
GYJ EMP_EMP_NO_PK EMP ENABLED
GYJ EMP_MGR_FK EMP ENABLED
8、禁用或启动约束主键与外键的官方文档语法图。
9、分析
禁用主健约束,句中指定CASCADE关键字,这样将在禁用主键约束的同时会禁用那些引用它们的FOREIGN KEY约束。如下操作:
gyj@MYDB> alter table emp disable constraint emp_emp_no_pk cascade; Table altered.
有没有什么语?在启用主键约束时侯,同时也启动外键。如下操作报错:
gyj@MYDB> alter table emp enable constraint emp_emp_no_pk cascade;
alter table emp enable constraint emp_emp_no_pk cascade
*
ERROR at line 1:
ORA-00933: SQL command not properly ended
*特别注意的是在ENABLE主键后不会自动恢复外键(没有cascade选项),因此需要手工对引用该键的约束进行ENABLE。
如下操作:
ALTER TABLE '子表' ENABLE CONSTRAINT '约束主键名';
ALTER TABLE '子表' ENABLE CONSTRAINT '约束外键名';
[每日一题] OCP1z0-047 :2013-08-18 禁用启用约束――主键与外键 ..................................61的更多相关文章
- JpGraph使用详解http://5ydycm.blog.51cto.com/115934/177498 http://www.cnblogs.com/txw1958/archive/2013/08/18/php-charts.html
下载 在官方网站 http://www.aditus.nu/jpgraph/ 下载jpgraph,其中1.X系列是用于PHP4的,2.X系列是用于PHP5的. 安装 将下载的得到的jpgraph压缩文 ...
- [Buzz Today]2013.08.18
# Go 语言实现memcached:groupcache memcached作者Brad Fitzpatrick用Go语言重新实现了memcached. groupcache继承了memcached ...
- CISP/CISA 每日一题 18
CISSP 每日一题(答)What is the purpose of an access review and audit? Checkto ensure that users do not hav ...
- 老男孩IT教育-每日一题汇总
老男孩IT教育-每日一题汇总 第几天 第几周 日期 快速访问链接 第123天 第二十五周 2017年8月25日 出现Swap file….already exists以下错误如何解决? 第122天 2 ...
- 【Java每日一题】20161018
20161017问题解析请点击今日问题下方的"[Java每日一题]20161018"查看 package Oct2016; public class Ques1018 { publ ...
- PL/SQL Challenge 每日一题:2014-3-14 11gR2中带RELIES_ON子句的RESULT_CACHE函数
PL/SQL Challenge 每日一题:2014-3-14 11gR2中带RELIES_ON子句的RESULT_CACHE函数 最先答对且答案未经编辑的puber将获得纪念章一枚(答案不可编辑但可 ...
- [每日一题]面试官问:for in和for of 的区别和原理?
关注「松宝写代码」,精选好文,每日一题 时间永远是自己的 每分每秒也都是为自己的将来铺垫和增值 作者:saucxs | songEagle 一.前言 2020.12.23 日刚立的 flag,每日一 ...
- [每日一题]面试官问:谈谈你对ES6的proxy的理解?
[每日一题]面试官问:谈谈你对ES6的proxy的理解? 关注「松宝写代码」,精选好文,每日一题 作者:saucxs | songEagle 一.前言 2020.12.23 日刚立的 flag,每日一 ...
- 【JavaScript】Leetcode每日一题-二叉搜索树的范围和
[JavaScript]Leetcode每日一题-二叉搜索树的范围和 [题目描述] 给定二叉搜索树的根结点 root,返回值位于范围 [low, high] 之间的所有结点的值的和. 示例1: 输入: ...
随机推荐
- HDU4496_D-City(并查集删边/逆向)
D-City Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others) Total Sub ...
- ios 自己定义导航栏和切割线
自己定义导航栏: // CustomNaviBarView.h #import <UIKit/UIKit.h> @interface CustomNaviBarView : UIView ...
- overflow:hidden
原来以为overflow:hidden能隐藏所有溢出的子元素,但今天发现我错了. 对于overflow:hidden的最大误解时:当一个具有高度和宽度中至少一项的容器应用了overflow:hidde ...
- Linq to Entities中无法构造实体或复杂类型
EF中在使用linq就行查询select时不能直接使用自动映射生成的类,需要在单独声明一个类或者使用匿名类在查询完成后再转为对应的对象. public partial class WebForm1 : ...
- parentViewController
获取创建自己的上一级视图 self.parentViewController 并且强制转换
- -canOpenURL: failed for URL
这在 Xcode 6.4 + iOS 8 时,是不会有的情况,原因是[为了强制增强数据访问安全, iOS9 默认会把所有从NSURLConnection . CFURL . NSURLSession发 ...
- IT学习方法
IT 技术的发展日新月异,新技术层出不穷,具有良好的学习能力,能及时获取新知识.随时补充和丰富自己,已成为程序员职业发展的核心竞争力.本文中,作者结合多年的学习经验总结出了提高程序员学习能力的三个要点 ...
- OpenCV——视频颜色识别
#include <opencv2/opencv.hpp> #include <iostream> using namespace std; using namespace c ...
- MFC串口通信
1.串口的操作可以有两种操作方式:同步操作方式和重叠操作方式(又称为异步操作方式). 同步操作时,API函数会阻塞直到操作完成以后才能返回(在多线程方式中,虽然不会阻塞主线程,但是仍然会阻塞监听线程) ...
- (整理)ubuntu 的 相关知识(来自 鸟哥的私房菜)
1. Linux 文件权限概念 $ ls 察看文件的指令 $ ls -al 出所有的文件详细的权限与属性 (包含隐藏档,就是文件名第一个字符为『 . 』的文件) 在你第一次以root身份登入Linux ...