空属性:
null(默认的空属性)和not null(不为空)
数据库默认的字段基本都为null,但有时候为空是不对的,比如有一张学生信息表,有学号字段和姓名字段,一个学生肯定有唯一对应的学号,如果学号为空的话,这张表就有问题了。
默认值:
default关键字
数据在插入的时候,如果不给定数据,就是用默认值;
zerofill:
使得数据进行了一种格式化的输出;如果宽度小于设置的宽度则自动填充0
主键:
primary key:用来唯一的约数该字段的数据,该字段数据不能重复,不能为空。如果插入时,数据是表中已经存在的,则插入操作失败。一张表最多只能有一个主键
在建表的时候,指定主键
建完表之后,增加主键
alter table [表名称] add primary key (列名称)
如果有多个字段想作为主键,可使用复合主键
删除主键
alter table [表名称] drop primary key
自增长
auto_increment
当对应的字段,不给值,会自动的被系统触发
特点:
- 任何一个字段要做自增长,本身必须是一个索引
- 自增长字段必须是整数
- 一张表最多只能有一个自增长
唯一键:
unique
唯一键即数据具有唯一性,不能重复出现,与主键的区别是,一张表中可以有多个字段是唯一键属性即唯一键可以解决一张表中有多个字段需要唯一性约束的问题;此外,唯一键允许为空,并且可以有多个空,空字段不进行唯一比较
外键:
foreign key (列名称) references 主表 (列名称)
外键用于定义主表和从表之间的关系;外键约束主要定义在表上,主表则必须是由主键约束或唯一键约束。当定义外键后,要求外键列数据必须在主表的主键列存在或null
总结:
空属性:null(空属性,默认属性) ;not null(不为空)
默认属性:default
zerofill属性
主键:primary key
唯一键:unique
自增长:auto_increment
外键: foreign key (列名称) references 主表 (列名称)