数据类型
- 常用的数据类型如下:
- 整数:int 、bit
- 小数:decimal
- 字符串:varchar 、char
- 日期时间:date 、time 、datetime
- 枚举类型(enum)
- 特别说明的类型如下:
- decimal表示浮点数,如decimal(5, 2)表示共存5位小数,小数占2位
- char表示固定长度的字符串,如char(3),如果填充’ab’时就会补一个空格为‘ab ’
- varchar表示可变长度的字符串,如varchar(3),填充’ab’时就会储存’ab’
- 字符串text表示储存大文本,当字符大于4000时推荐使用
- 对于图片、音频、视频等文件,不储存在数据库中,而是传到某个服务器上,然后在表中储存这个文件的保存路径
约束
- 主键primary key:物理上储存的顺序
- 非空 not null:此字段不允许填写空值
- 唯一unique:此字段的值不允许重复
- 默认default:当不填写此值时会使用默认值,如果填写时以填写为准
- 外键foreign key:对关系字段进行约束,当为关系字段填写时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常
- 说明:虽然外键约束可以保证数据的有效性,但是在进行数据的crud(增加、修改、删除、查询)时,都会降低数据库的性能,所以不推荐使用,那么数据的有效性就需要我们在逻辑层进行控制。