空属性:

null(默认的空属性)和not null(不为空)

数据库默认的字段基本都为null,但有时候为空是不对的,比如有一张学生信息表,有学号字段和姓名字段,一个学生肯定有唯一对应的学号,如果学号为空的话,这张表就有问题了。

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_主键

默认值:

default关键字

数据在插入的时候,如果不给定数据,就是用默认值;

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_数据_02

zerofill:

使得数据进行了一种格式化的输出;如果宽度小于设置的宽度则自动填充0

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_主键_03

主键:

primary key:用来唯一的约数该字段的数据,该字段数据不能重复,不能为空。如果插入时,数据是表中已经存在的,则插入操作失败。一张表最多只能有一个主键

在建表的时候,指定主键

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_数据_04

建完表之后,增加主键

alter  table [表名称]  add primary key (列名称)

如果有多个字段想作为主键,可使用复合主键

删除主键

alter table  [表名称] drop  primary key 

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_数据_05

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_字段_06

自增长

auto_increment

当对应的字段,不给值,会自动的被系统触发

特点:

  1.        任何一个字段要做自增长,本身必须是一个索引
  2.       自增长字段必须是整数
  3.     一张表最多只能有一个自增长

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_主键_07

唯一键:

unique

唯一键即数据具有唯一性,不能重复出现,与主键的区别是,一张表中可以有多个字段是唯一键属性即唯一键可以解决一张表中有多个字段需要唯一性约束的问题;此外,唯一键允许为空,并且可以有多个空,空字段不进行唯一比较

外键: 

foreign  key (列名称)   references  主表 (列名称)

外键用于定义主表和从表之间的关系;外键约束主要定义在表上,主表则必须是由主键约束或唯一键约束。当定义外键后,要求外键列数据必须在主表的主键列存在或null

 

MySQL 设计表 字段默认值 mysql创建表字段默认值为0_数据_08

总结:

空属性:null(空属性,默认属性) ;not null(不为空)

默认属性:default 

zerofill属性

主键:primary key

唯一键:unique

自增长:auto_increment

外键: foreign key  (列名称)  references  主表 (列名称)