MySQL中,字段数据类型主要有字符型 数值型 时间型三种。概览图如下:
一般,在创建一个表的时候就要给相应的字段指定指数据类型
字符型
MySQL中的字符串,要用‘单引号‘引起来
表中的一行,有最大存储限制,最多为65535,以下类型的存储长度再要这个限制之内,text类型除外
varchar类型
可变字符串,使用时需设定其长度,最大长度理论值为65535,实际最大长度为65533
不同的字符集编码,对应的长度不同,比如:
- 默认英文字符,最多可存65535
- 以gbk形式存储中文,最多可存65535/2
- 以utf8形式存储中文,最多可存65535/3
char类型
定长字符串,使用时指定其长度,如果不设定,默认为1,最大理论长度为255
适用于具有明确的可预见长度的字符,比如手机号 邮政编码等
实际存储时,如果少于设定长度,会以空格补全
varchar和char示例
- 示例如下
enum类型
单选项字符串数据类型,适合存储表单界面中的单选项值
设定的时候需要给固定的几个选项,存储的时候,只能存储其中一个值
形式:enum(‘选项1’,’选项1’ …)
这些字符串选项值对应为:1 2 3 4 …. 65535,最多65535个选项
存储的时候,既可以使用其值也可以使用对应的数字值
set类型
多选项字符串数据类型,适合存储表单中的多选项值
设定的时候,需要给固定的几个选项,存储的时候,可以存储一个或多个值
形式:set(‘选项1’,’选项2’ … )
这些字符串选项对应的值为:1 2 4 8 16 32 64 … ,最度64个选项
存储的时候,可以使用逗号将字符串分隔,或使用对应的数字和
enum和set示例
text类型
长文本数据类型
本身最多存储65535个字符
存储的数据不占用表中一行的字符数量,所以不受行65535容量的限制
同类字符有:tinytext smalltext longtext
其他字符串数据类型
- binary:定长二进制字符串数据类型,存储二进制值
- varbinary:变长二进制字符串数据类型,存储二进制值
- bolb:二进制数据类型,适用于 图片 文件等
时间类型
如果插入的是我们给定的时间数据,需要用单引号引起来
datetime类型
时间日期类型
date类型
日期类型
time类型
时间类型
year类型
年类型
timestamp类型
时间戳类型
时间类型示例
数值型类型
(未完待续)