ORCL的约束

create table 用户名.表名称(字段名称 字段类型 字段约束,字段名称 字段类型 字段约束,…);
五大约束
1.—-主键约束 表示唯一标识且不能为空,如:人员ID不能重复,且不能为空
primary key 提示:违反唯一约束条件或无法将空插入
字段名称 字段类型 primary key 如:sbrlsh VARCHAR2(20) primary key
constraint 约束命名 primary key(约束字段)
2.—-唯一约束 唯一性,可以空,但只能有一个相同的数据,不能出现重复
unique 提示:违反唯一约束条件
字段名称 字段类型 unique 如:sbrlsh VARCHAR2(20) unique
constraint 约束命名 unique(约束字段)
3.—-检查约束 对该列数据的范围、格式的限制(如:年龄、性别等)
check 提示:违反检查约束条件
字段名称 字段类型 check(条件) 如:nl VARCHAR2(20) check(nl in (‘男’,‘女’))
constraint 约束命名 check(条件)
4.—-非空约束 使用后该字段内容不允许设置为NULL
not null 提示:无法将空插入
字段名称 字段类型 not null 如:xm VARCHAR2(20) not null
5.—-外键约束 在两张表上进行关联约束,加入关联约束后产生父子关系
foreign key 提示:违反完整性约束条件 ,未找到父项关键字
constraint 约束命名 foreign key(约束字段)references 父表名称(父表中关联字段)
若用了外键约束,则删除父表中数据时需先删除子表中的数据
级联操作: 1. 级联删除 :on delete cascade,当主表数据删除之后,对应子表数据同时被删除 ,子表中对应字段所在行所有数据都会被删除
配置级联删除 : constraint 约束命名 foreign key(约束字段)references 父表名称(父表中关联字段)on delete cascade
2.级联更新 :on delete set null ,当主表数据删除之后,对应子表数据相应字段内容为null,只将子表中对应字段内容变为Null,该行别的数据不动
配置级联更新 : constraint 约束命名 foreign key(约束字段)references 父表名称(父表中关联字段)on delete set null

constraint --设置约束提示名字 ,可通过此增加约束 constraint 约束命名 约束(约束字段)

约束命名规则
    非空约束     NN_表名_列名

唯一约束     UK_表名_列名

主键约束     PK_表名

外键约束     FK_表名_列名

条件约束     CK_表名_列名

默认约束     DF_表名_列名

6.查看约束 可以通过 select * from user_constraints natural join user_cons_columns 查看约束 table_name为表名称
natural join —自然连接,会将两个数据字典内字段相同的内容连接查询
7.增加约束 alter table 表名称 add constraint 约束名称 约束类型(约束字段); 非空约束不可用此语法

8.禁用约束 alter table 表名称 disable constraint 约束名称 [cascade] ;有关联外键时后面添加 cascade

9.启用约束 alter table 表名称 enable constraint 约束名称

10.删除约束 alter table 表名称 deop constraint 约束名称 [cascade] ;有关联外键时后面添加 cascade

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值