Msyql——了解常见的字段的约束
目录not nulldefault [值]列描述zerofillprimary keyauto_incrementunique外键真正约束字段的是数据类型但是数据类型约束很单一需要有一些额外的约束更好的保证数据的合法性从业务逻辑角度保证数据的正确性。比如有一个字段是email那他就应该是全表唯一的。not null如果一个字段被其修饰那么该字段不能为空插入的时候必须给该字段赋值。需要注意空字符串0等不叫空空是指根本没有值。default [值]给一个字段设置默认值插入时如果字段为空就自动填充。列描述在创建表的时候可以对表中的某个字段做注释。zerofill指明某个数值类型字段显示的时候如果没有达到指定的宽度就在其左边填充0。而字段的宽度在字段类型中指明。primary keyprimary key用来约束该字段里面的数据不能重复、不能为空。一张表中最多只能有一个主键。主键可以在建表的时候就指明也可以建表后追加设置也可以删除主键也可以有复合主键多个字段作为一个主键。auto_increment一个字段如果被auto_increment修饰插入数据的时候不给该字段赋值该字段会默认填充当前表中的所有行的该字段的值中的最大值1。uniqueunique用来约束该字段的值在全表唯一但是可以为null一张表中可以有多个被unique修饰的字段。外键如果从表中的某个字段引用主表中的一个字段就可以用外键将这两个字段两张表关联起来。其中主表中的该字段必须是主表的主键或者唯一键否则就会出现从表中的一行数据关联主表中的多行数据的结果产生错误。定义了外键之后要求从表的外键字段的值必须为null或者在主表中存在否则报错。语法foreign key (字段名) references 主表(列)