约束的操作

发表时间:2017-05-11 16:45:55 浏览量( 16 ) 留言数( 0 )

学习目标:

1、了解Java的历史

2、为什么要学习Java语言

3、端正学习态度


学习过程:

一、表级约束

表级约束是指在定义了所有列之后定义的约束。不过要注意,非空约束(not null)只能在列级中定义, 而不能在表级中定义。

示例:

  create table t_student
(
    --物理id
    stu_id int ,
    stu_num char(4) not null,
    stu_name varchar2(30) not null,--非空
    stu_age int ,
    stu_gender char(2) ,
    stu_state char(1),
    
    --第二种方式
   constraint  约束名  约束条件
   constraint PK_stu_id primary key(stu_id),
    constraint UQ_stu_num unique(stu_num),
    constraint CK_stu_gender  check(stu_gender in ('男','女'))
    
);

二、维护约束

除了可以在定义表的时候定义约束,我们还可以通过修改的方式定义约束,这种方式是最推荐的方式,虽然写起来比较麻烦。但是可以更好的维护表结构和约束。

我们可以使用 alter table语句增加约束. 如果约束不再需要, 那么也可以使用 alter table语句删除约束, 另外用户还可以使用 alter table 语句修改约束名,禁止和激活约束,维护约束是由表所有者来完成的.

示例:

--格式:alter table table_name add constraint 约束名 约束条件
--添加约束
alter table t_student add constraint PK_stu_id primary key(stu_id);
alter table t_student add constraint UQ_stu_num unique(stu_num,stu_name);--联合唯一
alter table t_student add constraint CK_stu_gender  check(stu_gender in ('男','女'));

--删除约束
alter table t_student drop constraint UQ_stu_num
--禁用约束
alter table t_student modify  constraint CK_stu_gender disable;
--启动约束
alter table t_student modify  constraint CK_stu_gender enable;