05|Oracle学习(CHECK约束)

1. CHECK约束介绍

  • 就是检查约束,用于限定每一列能够输入的值,以保证数据的正确性。
    • 例如:下面表中的性别,我们限定其为:男和女。那么后面的性别只有这两个值。限定死了。
      在这里插入图片描述

2. 添加CHECK约束

2.1 在建表时添加约束

在这里插入图片描述

2.1.1 案例
  • 建立一个学生信息表,将其中的性别用Check约束
create table tb_students(
    stu_num char(5) not null,
    stu_name varchar(10) not null,
    stu_sex char(2) not null,
    primary key(stu_num),
    constraint ck_student_sex CHECK(stu_sex='男' or stu_sex='女')
);
  • 如果建立学生信息表时,想限定性别为“男”或“女”、限定学生年龄在[6,30],该怎么做?如下示:
create table tb_students(
    stu_num char(5) not null,
    stu_name varchar(10) not null,
    stu_sex char(2) not null,
    stu_age number(2) not null,
    primary key(stu_num),
    constraint ck_student_sex CHECK(stu_sex='男' or stu_sex='女'),
    constraint ck_student_age check(stu_age between 6 and 30)
);
2.2 建表后,再添加约束

在这里插入图片描述

2.2.1 案例
  • 建立个没有CHECK约束的学生信息表:
create table tb_students(
    stu_num char(5) not null,
    stu_name varchar(10) not null,
    stu_sex char(2) not null,
    stu_age number(2) not null,
    primary key(stu_num)
);

  • 接下来,为表中添加CHECK约束,限定性别为“男”或“女”:
alter table tb_students 
add constraint ck_student_sex Check(stu_sex='男' or stu_sex='女');

3. 删除CHECK约束

  • 删除学生信息表中的ck_student_sex约束:
alter table tb_students
drop constraint ck_student_sex;
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值