• mysql 外键


    为什么使用外键

    例如上表中员工所属的部门列存在重复的数据,而且如果部门过长的话, 太占用空间,所以我们可以重新设计一张表, 这张表 中存放部门的相关信息

                    

    这种解决方法就是使用外键来解决的

    操作方法:

    constraint 外键名(fk_userinfo_depart) foreign key (列名(depart_id)) references 表名(department)(关联的列名(id))

     例:create table student(
      sid int auto_increment primary key,
      sname char(32) not null default '',
      gender char(16) not null default '',
      class_id int not null default 1,
      constraint class_key foreign key (class_id) references class(cid)
      )charset=utf8 engine=innodb;

    ps:创建多个外键的时候, 名称不能一样

    外键的变种

    唯一索引

    例:create table t1(
                        id int,
                        num int,
                        unique(num)
                    )engine=Innodb charset=utf8;

    作用:    
                        num列的值不能重复
                        加速查找

    联合唯一索引:

    例:create table t2(
                        id int,
                        num int,
                        unique(id, num)
                    )engine=Innodb charset=utf8;

    作用:    
                        num列和id列的值不能重复
                        加速查找

  • 相关阅读:
    kibana 安装和启动
    Docker安装MariaDB-10.2
    php 生成指定日期范围内的数组
    linux nohup 命令
    git的常用指令(一)
    git的常用指令(二) git add -A 、git add . 和 git add -u
    修改hosts文件 解决coursera可以登录但无法播放视频的问题
    修改mac系统的host文件 (一)
    charles 抓包 (二)
    charles 抓包 (一)
  • 原文地址:https://www.cnblogs.com/duGD/p/11022659.html
Copyright © 2020-2023  润新知