约束

作者: 鲁斯侨 | 来源:发表于2017-12-16 22:15 被阅读0次
    微信图片_20171216205127.png
    • 定义约束

    constraint (列级,表级)
    not null 只能定义在列级上
    foreign key (列级,表级)
    primary key (列级,表级)
    check (列级,表级)

    create table class(
    name varchar(20) not null/unique)
    
    • 主键数据唯一,并且不能为空值
    create table class(
    id number constraint class_id_pk primary key,
     name varchar(20) 
     )
    
    • 外键必须是其他表里的主键或者唯一键
    create table student(
    id number,
    name varchar2(20),
    class_id number,
    constraint student_classid_fk foreign key(class_id) references class(id)
    on delete cascade
    )
    
    • on delete cascade级联删除:主键行删除,将所有引用该主键的外键信息删除
    • on delete set null:主键行删除,将所有引用该主键的外键信息变为null
    • check约束:确保列中的数据满足条件
    create table emp(
    sal number(8,2) constraint emp_sal_min check (sal>0)
    )
    
    • 追加约束
    alter table emp 
    add constraint emp_sal_ch check (sal>0)
    
    • 删除约束
    alter table emp 
    drop primary key|unique(column)|constraint emp_sal_ch
    
    • 删除该约束和与其相关的所有约束
    alter table dept 
    drop primary key emp_sal_ch cascade
    
    • 启用和禁用约束
    alter table emp 
    disable constraint emp_sal_ch
    
    alter table emp 
    enable constraint emp_sal_ch
    

    相关文章

      网友评论

          本文标题:约束

          本文链接:https://www.haomeiwen.com/subject/iwdewxtx.html