管理oracle约束与分区表

管理oracle约束与分区表

ID:14236679

大小:208.36 KB

页数:8页

时间:2018-07-27

管理oracle约束与分区表_第1页
管理oracle约束与分区表_第2页
管理oracle约束与分区表_第3页
管理oracle约束与分区表_第4页
管理oracle约束与分区表_第5页
资源描述:

《管理oracle约束与分区表》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、1.约束作用:约束用于确保数据库数据的完整性,在oracle数据库中,可以使用约束,触发器和应用代码(过程,函数)3种方法实现数据完整性,这3种方法中,因为约束易于维护,并且具有最好的性能,所以实现数据完整性首选约束.分类:约束的种类有:notnull,unique,primarykey,foreignkey,checkNotnull确保字段值不能为空Unique:确保字段值唯一性Primarykey,最常用的约束(主键约束),主键约束的列值不仅不能重复,也不能为NULL,注意一张表最多只能有一个主键约束,当定义主键约束后oracle自动建立一个以主键为关键字段的索引。Foreignke

2、y:定义了主从表之间的关系,foreign要定义在从表上,但主表必须具有主键约束或唯一约束,当定义froeignkey后外部键列的数据必须在主表的主键列中存在,或者为NULLCheck::用于强制表行数据必须满足的条件,如工资表,工人工资必须在2000-5000之间约束状态enablevalidate:是默认,新旧数据同时满足约束规则enablenovalidate:旧数据可以不满足,检新插入的数据要满足约束disablevalidate:不允许在表上执行任何DML操作,主要用在分区表,对于主键和唯一约事,会删除相应的唯一索引,但约束状态任可用disablenovalidate数据可不满

3、足约束规则,对于主键和唯一约事,会删除相应的唯一索引,约束常用语句1.create table t(i number,v mubmer not null) 2.create table t(i number,v mubmer unique) 3.create table t(i number constraint pk_i primary key,v number) 4.create table t2(c number,d number,constraint fk_d foreign key(c),references t1(v)); 5.alter table t add constr

4、aint pk_i primary key (i) 6.alter table t modify i not null; 7.alter table t add constraint t_i unique(i)[(create index ind_name on t(i))]; 8.alter table t add constraint t_i check(i in (1,2,3,4,5)); 9.alter table t disable novalidate constraint i 10.alter table t enable novalidate constraint che

5、ck_i 11.alter table t drop constraint i; 1.alter table t drop primary key i; #常用的数据字典1.dba_constraints 2.dba_cons_columns 3.user_cons_columns 4.user_constraints  简单应用检验当为一个表建立主键索时后,这个字段是否满足约束非空,唯一性,而且自动建立一个索引,并查看当把约束状态关闭再次插入相同的记录,是否还能把把约束设为enableividate状态。1.SQL> create table t(i number constraint

6、 pk_i primary key,v number); 2.SQL> insert into t values(1,2); 3.SQL> insert into t values(3,4); 4.SQL> commit; 5.SQL> select * from t; 6.         I          V 7.---------- --------------------------- 8.         1          2 9.         3          4  现在表中有两条记录,然后给它插主键为空或相同的值1.SQL> insert into t va

7、lues('',10); 2.ERROR at line 1: 3.ORA-01400: cannot insert NULL into ("Y"."T"."I") 4.SQL> insert into t values(1,10); 5.ERROR at line 1: 6.ORA-00001: unique constraint (Y.PK_I) violated  可以看到全部报错,此时主键不能为空或重复查看是否建立索引1.S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。