欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle数据库学习之约束的创建与管理(修改约束)实例讲解

程序员文章站 2022-07-01 18:22:14
关于oracle的学习记录: 四十一、约束的创建与管理(修改约束) 约束在以后开发之中一定要记住:建立数据表的时候一定要同时建立好约束,约束在使用之中不要做任何的变化 前提:如果要想控制约束,那么必...

关于oracle的学习记录:

四十一、约束的创建与管理(修改约束)

约束在以后开发之中一定要记住:建立数据表的时候一定要同时建立好约束,约束在使用之中不要做任何的变化

前提:如果要想控制约束,那么必须要有约束的名称

范例:现在假设有如下的数据表

drop table member purge;

drop table book purge;

create table member(

mid number,

name varchar2(20)

);

insert into member(mid,name) values(10,null);

insert into member(mid,name) values(10,'张三');

insert into member(mid,name) values(10,'李四');

现在的代码之中mid有重复数据,姓名上存在有空的内容

1.为表中增加约束,语法:

alter table 表名称 add constraint 约束名称 约束类型(字段)[选项];

范例:为member表增加主键约束

alter table member add constraint pk_mid primary key(mid);

如果里面的数据本身就存在有错误内容,那么是无法进行约束的增加的

delete from member where name in('张三','李四');

alter table member add constraint pk_mid primary key(mid);

对于五种约束而言,以上的语法适用于检查、唯一、主键、外键四类约束,但是不能够使用在非空约束上

如果真的要为表中的字段增加非空约束,只有一种方式,使用修改表结构的操作完成

alter table member modify(name varchar2(20) not null);

2.为表删除约束,语法:

alter table 表名称 drop constraint 约束名称;

范例:删除约束

alter table member drop constraint pk_mid;

alter table member drop constraint sys_c0011097;

虽然以上语法较多,但是对于约束的修改绝对不要去使用

总结:

1.在所有项目开发之中一定要使用到约束

2.所有的约束在定义表的时候要一起定义,一定要设置约束名称

3.五种约束里面一定会使用到的:主键、外键、非空