zoukankan      html  css  js  c++  java
  • mysql数据库学习——4,完整性约束

    主键
    create table feng(
    teamno int not null,
    playerno int not null,
    division char(6) not null,
    primary key(teamno)
    )
     
     

    create table feng(

    teamno int not null primary key ,
    playerno int not null,
    division char(6) not null,
    )
     
    复合主键
    create table feng(
    teamno int not null,
    playerno int not null,
    division char(6) not null,
    primary key(teamno,playerno)
    )
     
    替代键(候选键)
     
    create table feng(
    teamno int not null primary key ,
    playerno int not null,
    division char(6) not null,
    unique(playerno)
    )
     
    create table feng(
    teamno int not null primary key ,
    playerno int not null,
    division char(6) not null,
    unique(playerno,division)
    )
     
    外键(在innoDB中使用)
    外键声明包括三个部分
    1,那个列或列组合是外键
    2,指定外键参照的表和列
    3,参照动作[cascade(级联操作),restrict(拒绝操作),set null(设为空),no action,set default]
    如果没有指定参照动作默认是
    on update restrict
    on delete  restrict
    create table feng(
    teamno int not null primary key ,
    playerno int not null,
    division char(6) not null,
    foreign key(division)
    references othertable   (column)
    on update restrict
    unique(playerno)
    )
     
    check完整性约束
    create  table players 
    (playerno int not null,
     sex   char(1) not null,
             check (sex in ('m','f'))
    )
     
    create  table players 
    (playerno int not null,
    birth_date  date,
     sex   char(1) not null,
             check (sex in ('m','f'))
    joined smallint not null,
                 check (year(birth_date)<joined),
                 check (joined<1880),
    )
     
    create  table players 
    (playerno int not null,
    birth_date  date,
     sex   char(1) not null,
              check (sex in (select sex from wholetab)
    )
  • 相关阅读:
    Visual Studio安装空白 和 VS Code打开失败解决方案
    基于编程人员Python学习第一章节
    Windows Live Writer安装失败错误解决方案
    知乎推荐率最高的20款耳机
    Kubernetes K8s架构师实战集训营
    大数据从入门到项目实战,精品学习材料,值得大家一看
    京峰2019Linux高端云计算架构师课程
    老男孩linux高端运维
    马哥Linux 高端运维云计算就业班
    hello
  • 原文地址:https://www.cnblogs.com/fslnet/p/2507734.html
Copyright © 2011-2022 走看看