Oracle五中约束简介
一、非空约束
非空约束,顾名思义也就是说所在位置不能为null
非空约束not null
在创建表的时候在字段类型后添加 not null 即可设置为非空约束
有时候修改表结构的时候要在已有字段上添加非空约束,需要用到modify语句
例如
alter table table_name modify(name varchar2(50) not null)
二、唯一约束
唯一约束UNIQUE
唯一约束顾名思义,就是所在字段内容只能出现一次,不能重复出现
在创建表时在类型后增加 unique key
name varchar(20) unique key
当然也可以在建表最后一句增加
constraint table_name_uk unique key(mid)
也可以在已有的表中修改字段类型
alter table table_name add constraint constraint_name unique key(mid)
三、主键约束
主键约束 PRIMARY KEY
主键约束比较特殊
主键约束集合了 唯一约束与非空约束
也就是说 主键约束是唯一约束和非空约束的集合、
在创建表的时候在字段类型后添加 PRIMARY KEY
name varchar2(20) primary key
也可以在表的最后添加
constraint table_name_PK primary key(name)
需要注意的是主键可以有多个,但是尽量别使用复合主键也就是说一张表有一个主键就行了,
也可以在已有的表中增加主键约束
alter table table_name add constraint constraint_name primary key(mid)
四、检查约束
检查约束CHECK
检查约束的作用就是为了防止不规则的数据被填入
例如 你创建了一张表,只想让用户输入男或女,这时候就要用到检查约束
在 字段类型后添加 即可
例如
sex varchar2(2) check (sex in(‘男’,‘女’)
也可以在表的最后添加
CONSTRAINT TABLE_NAME CHECK (SEX IN (‘男’,‘女’)
修改约束
ALTER TABLE TABLE_NAME ADD CONSTRAINT CONSTRAINT_NAME CHECK(SEX IN(‘N’,M’)
五、主外键约束
主外键约束FOREIGN KEY
主外键约束,申明一个是父表,一个是子表
在建表时,加入
CONSTRAINT FK_NAME FOREGIN KEY(MID) REFERENCES MEMBER(MID)
这样就表示通过FOREIGN KEY 设置了一个外键约束(mid)这一样就表示advice表中的mid字段取值收到member表中的mid字段限制