主键约束,唯一约束与默认约束

主键约束:

PRIMARY KEY

  1. 每张数据表只能存在一个主键
  2. 主键保证记录的唯一性
  3. 主键自动为NOT NULL

AUTO_INCREMENT

  1. 自动编号,且必须与主键一起使用。但是主键不一定要和AUTO_INCREMENT一起使用
  2. 默认情况下,起始值为1,每次的增量为1

AUTO_INCREMENT与PRIMARY KEY一起使用:

主键约束,唯一约束与默认约束_第1张图片

插入数据(不需要插入主键的值,因为与AUTO_INCREMENT一起使用,而AUTO_INCREMENT默认起始为1每次增加1):

主键约束,唯一约束与默认约束_第2张图片

需要注意的是,AUTO_INCREMENT一定要与主键一起使用,但是主键不一定要与AUTO_INCREMENT一起使用。但当主键不与AUTO_INCREMENT一起使用时,添加记录过程中就要手动添加主键的值,且不能重复,重复了会报错。


唯一约束:

UNIQUE KEY

  1. 唯一约束可以保证记录的唯一性
  2. 唯一约束的字段可以为空值(NULL)
  3. 每张数据表可以存在多个唯一约束

UNIQUE KEY为字段定义唯一约束:

主键约束,唯一约束与默认约束_第3张图片

插入数据验证唯一约束:

主键约束,唯一约束与默认约束_第4张图片

可以看到两次插入的username都为Tom,第二次插入操作失败了,因为username已经定义为唯一约束,其值不能重复。


默认约束:

DEFAULT

  1. 默认值
  2. 当插入记录时,如果没有明确为字段赋值,则自动赋予默认值。

使用DEFAULT定义某字段为默认约束:

主键约束,唯一约束与默认约束_第5张图片

插入数据验证默认约束:

主键约束,唯一约束与默认约束_第6张图片


你可能感兴趣的:(MySQL基础)