mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长

一、有哪些列属性?

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第1张图片

二、是否为空

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第2张图片

注意:第二个插入语句会插入失败。

三、默认值 default value

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第3张图片

如果字段可以为null,并且有默认值,当插入的字段值为null,时,那么在数据库中显示的值不是默认值而是null.

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第4张图片

四、主键primary key

主键的设置包含设置单一主键,和组合主键。

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第5张图片

1、设置主键有两种方式:

第一种主键设置在属性后:

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第6张图片

第二种主键设置在所有字段结尾:

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第7张图片

这样写的好处是:可以设置组合主键。

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第8张图片

2、mysql定义主键的最好方式

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第9张图片

因此:最好使用非属性字段作为主键。最好与实体没有联系。

五、自动增长列属性 auto_increment

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第10张图片

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第11张图片

上图是设置自动增长的方法,设置自动增长后可以插入null也可以不插入。

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第12张图片

2、自动增长的初始值是可以设置的,默认值为1,通过表的选项:

alter table tbl_name auto_increment n

3、只要主键不冲突可以插入比当前主键最大值小的主键记录

mysql学习五之列的属性,不为空属性,设置默认值,主键,字段自动增长_第13张图片

4、只要主键不冲突,也可以对主键的值进行更新。

自动增长主要用于主键的id

你可能感兴趣的:(mysql笔记)