zoukankan      html  css  js  c++  java
  • MySql 表结构修改、约束条件、表关系

    表结构修改(alter)

    • 查看表的结构:desc 表名;
    • 修改表名:alter table 表名 rename to 新表名;
    • 修改字段名:alter table 表名 change 旧字段名 新字段名 数据类型;
    • 修改字段类型:alter table 表名 modify 字段名 数据类型;
    • 添加字段:alter table 表名 add [column] 新字段 数据类型;
    • 删除字段:alter table 表名 drop [column] 字段名;

    约束条件

    约束是一种限制,通过对表中的数据做出限制,来确保表中数据的完整性,唯一性

    • 默认约束(default)
      • 插入数据的时候,如果没有明确为字段赋值,则自动赋予默认值
      • 在没有设置默认值的情况下,默认值为NULL
    • 非空约束(not null)
      • 限制一个字段的值不能为空,insert的时候必须为该字段赋值
      • 空字符不等于NULL
    • 唯一约束(unique key)
      • 限制一个字段的值不重复,该字段的数据不能出现重复的
      • 确保字段中值的唯一
    • 主键约束(primary key)
      • 通常每张表都需要一个主键来体现唯一性,每张表里面只能有一个主键
      • 主键 = 非空 + 唯一
    • 自增长约束(auto_increment)
      • 自动编号,和主键组合使用,一个表里面只能有一个自增长
      • auto_increment 要求用在主键上
      • id int primary key auto_increment,
      • 或者
      • id int auto_increment , primary key(id)
      • 如果不想默认从1开始,从1000开始
      • ...(id int primary key auto_increment)auto_increment=1000;
    • 外键约束(foreign key)
      • 保持数据的一致性,我有的你一定有,你没有的,我绝对没有
      • foreign key (id_b) references a(id_a)

    表关系

    • 一对一
      • 用外键的方式,把两个表的主键关联
    • 一对多
      • 通过外键关联来实现这种关系
    • 多对多
      • 对于多对多关系,需要创建中间表实现
      • 例如学生选课
      • 选课表(中间表)的学生id和课程id分别是学生表和课程表的外键




  • 相关阅读:
    去除bootstrap默认的input和选中时的样式
    js生成二维码
    内网访问已经启动的vue项目
    vue项目未加载完成前显示loading...
    node通过QQ邮箱发送邮件
    Ubuntu 使用crontab做定时任务
    mysqldump 使用及其注意事项
    八大排序之选择类排序
    javax.sound.sampled.AudioInputStream
    java.io.StringBufferInputStream
  • 原文地址:https://www.cnblogs.com/jiyu-hlzy/p/11878273.html
Copyright © 2011-2022 走看看