Oracle管理约束(三)Oracle禁止和激活约束

1、禁止约束

04:55:47 SQL> alter table t1 disable novalidate constraint u_name;

Table altered.

04:55:48 SQL> select constraint_name,constraint_type,status,table_name from user_constraints

04:56:03   2    where table_name='T1';

CONSTRAINT_NAME                C STATUS   TABLE_NAME

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

U_NAME                         U DISABLED T1

04:56:09 SQL>

2、激活约束

(1)使用ENABLE NOVALIDATE 选项激活约束

ENABLE NOVALIDATE 选项用于快速激活约束,但该选项只能确保新数据符合约束规则,而不会最已存在数据进行任何检查。使用ENABLE  NOVALIDATE 选项激活约束时,不会再表上加锁,也不会影响其他用户在相应表上的DML操作。当数据处于运行高峰时,为了使约束快速生效 ,应使用该方法激活约束。实例如下:

04:55:47 SQL> alter table t1

04:59:47   2   enable novalidate constraint u_name;

Table altered.

05:00:09 SQL> select constraint_name,constraint_type,status,table_name from user_constraints

05:00:12   2    where table_name='T1';

CONSTRAINT_NAME                C STATUS   TABLE_NAME

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

U_NAME                         U ENABLED  T1

(2)使用 ENABLE VALIDATE 选项激活约束

使用 ENABLE VALIDATE 选项激活约束时,会在表上加锁,此时不允许其他用户在相应表上执行DML操作。为了确保已装载数据满足约束规则 ,在数据库运行的空闲时间使用该选项激活约束。使用 ENABLE NOVALIDATE 可以快速激活约束,但不会对已存在数据进行任何检查;使用  ENABLE VALIDATE 选项不仅会检查新键入的数据,同时要求已存在数据必须满足约束规则。示例如下:

05:00:14 SQL> alter table t1

05:02:38   2   enable validate constraint u_name;

Table altered.

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

时间: 2024-10-06 13:00:37

Oracle管理约束(三)Oracle禁止和激活约束的相关文章

Exchange Server 2010行为管理(三)禁止接受外部邮件

1.还是新建一条规则,这条规则的作用是禁止部分邮箱账号接受外部邮件,按next 2.勾选from users that are inside or outside the organization , or partners和sent to a member of distribution list,第一项选定outside the organization,第二项选定Intranet_Group@albert.iego.cn 通讯组,这个通讯组是我们需要测试的不能接受外部邮件组.按next 返

提升用户体验和交付应用程序 Oracle管理云获得多行业用户认可

2月23日,甲骨文宣布Oracle管理云(Oracle Management Cloud)业务实现大幅增长,在其上市后一年内即在全球赢得近950家新客户和合作伙伴,包括FORS.IDEA Cellular和Safexpress,它们均选择Oracle管理云来提高IT资源利用率,提升开发运维生产力,确保关键应用程序持续保持运行. Oracle管理云是Oracle云平台(Oracle Cloud Platform)的一部分,集成了一整套的新一代监测.管理和分析云服务,利用机器学习和大数据技术处理客户

Oracle管理约束(四)Oracle修正约束数据

使用 ENABLE VALIDATE 选项激活约束时,如果已存在数据不满足约束规则,则会提示错误信息,并且激活约束会失败.此时必须对已存在 数据进行修正,已确保这些数据全部满嘴约束规则.具体方法如下: (1)建立EXCEPTIONS 表 05:02:44 SQL> @$ORACLE_HOME/rdbms/admin/utlexcpt; Table created. 05:05:33 SQL> alter table t1 05:06:26   2   add constraint pk_id

【Foreign Key】Oracle外键约束三种删除行为

Oracle使用外键来限制子表中参考的字段值,要求子表中的数据必须在主表中存在.当主表的记录发生变化时导致外键参考唯一约束值发生了变化时,Oracle指定了三种动作:默认值(类似于restrict).delete cascade和delete set null.实际体验一下他们对删除操作的不同效果. 1.创建主表及子表并简单初始化几条数据1)创建主表t_parent,并初始化三条记录sec@ora10g> create table t_parent (parent_id int primary

Oracle管理安全和资源(三)Oracle资源管理器简介

Oracle资源管理器(Oracle Database Resource Manager,以下简称DBRM)管理数据库资源,为不同的会话分配不同的数据库资源.DBRM管理的资源主要包括CPU时间.下面分以下几个章节介绍: Oracle DBRM帮你处理哪些问题 Oracle DBRM是怎样处理这些问题的 Oracle DBRM包含的内容 Oracle DBRM资源分配方法 Oracle DBRM的权限管理 1.Oracle DBRM帮你处理哪些问题  当数据库服务器资源由操作系统来分配时,你可能

Oracle管理约束(五)Oracle使用延期约束检查

默认情况下,当执行DML操作时,如果键入了违反约束规则的数据,则会立即提示错误信息.某些情况下,可能希望在事务结束时进行约束 检查,如级联更新外部键.给自参照表装载数据等.需要注意,如果使用延期约束检查,那么在定义约束时必须指定 DEFERRABLE 选项.实 例如下: 11:53:27 SQL> alter table dept1 11:53:38   2   add constraint pk_dept1 primary key (deptno); Table altered. 11:53:

oracle学习笔记(三)_oracle

一.创建和管理表 1.创建表语法 create table 表名(column datatype [default expr][,column ...]) default 约束 说明略 2.利用子查询创建表 create table 表名 as select * from u表 二.修改表 1.添加一个新列 oracle:alter table table_name add(column datatype [default expr][,column datatype]...); 2.修改现有的

利用Oracle管理服务器将数据导入导出

在Oracle 9i中可以方便的把数据导出为文件,或者从文件导入.通过Oracle的管理服务器(Oracle Management Server,OMS)可以方便的实现,整个操作过程中有很多地方需要解释说明,但是完整的指导资料不多.各大论坛上很多所谓的高手,对该主题的回答往往是,高手是不用OMS的,用exp/impl吧.如果你执意追问,他多半会告诉你,其实我也不知道.如果有一份文档可以傻瓜式的指导他们如何来做,大多数人会欣喜若狂且若无其事的下载保存,回去慢慢研究. 使用EntERPrise Ma

Oracle 11g系列—6—Oracle中表的约束

完整性约束指的是数据库中数据的正确性和相容性.主要指下面的: primary key 主键 foreign key 外键 unique 唯一 not null 非空 check 检查约束 在Oracle中,使用constraint(英文的意思就是约束)关键字 为约束命名.如果用户没有命名,那么系统会自动会用户创建 的约束命名. OK,那我们接着就详细讲讲这些. 一.Not null 约束 从字面很好理解,就是非空约束,表 示某些列的值不可缺少的,在插入数据的时候,如果没有为它赋值,那么会提示错误