在看W3School教程-create table一节时,因为创建一张表时需要指定各个字段的数据类型,而我又对MySQL中的字段数据类型不甚了解,所以先学习一下数据类型的内容吧!
幸好W3School中也有一篇专门介绍数据类型的教程。
Text类型
数据类型 |
描述 |
char(size) |
保存固定长度的字符串,在括号中指定字符串的长度,最多255个字符 |
varchar(size) |
保存可变长度的字符串,在括号中指定字符串的最大长度,最多255个字符 |
tinytext |
存放最大长度为255个字符的字符串 |
text |
存放最大长度为65535个字符的字符串 |
blob |
用于blobs(Binary Large Objects)。存放最多65535字节的数据 |
mediumtext |
存放最大长度为16,777,215个字符的字符串 |
mediumblog |
用于blobs(Binary Large Objects)。存放最多16,777,215字节的数据 |
longtext |
存放最大长度为4,294,967,295个字符的字符串 |
longblob |
用于blobs(Binary Large Objects)。存放最多4,294,967,295字节的数据 |
enum(x,y,z,etc.) |
允许输入可能值的列表。可以在 ENUM 列表中列出最大 65535 个值。如果列表中不存在插入的值,则插入空值。 |
set |
与 ENUM 类似,SET 最多只能包含 64 个列表项,不过 SET 可存储一个以上的值 |
Number类型
数据类型 |
描述 |
tinyint(size) |
-128到127。0到255无符号。在括号中规定最大位数 |
smallint(size) |
-32768到32767。0到65535无符号。在括号中规定最大位数 |
mediumint(size) |
-8388608到8388607。0到16777215无符号。在括号中规定最大位数 |
int(size) |
-2147483648到2147483647。0到4294967295无符号。在括号中规定最大位数 |
bigint(size) |
-9223372036854775808到9223372036854775807。0到18446744073709551615无符号。在括号中规定最大位数 |
float(size, d) |
带有浮动小数点的小数字。在括号中规定最大位数。在d参数中规定小数点右侧的最大位数 |
double(size, d) |
带有浮动小数点的大数字。在括号中规定最大位数。在d参数中规定小数点右侧的最大位数 |
decimal(zize, d) |
作为字符串存储的double类型,允许固定的小数点 |
Date类型
数据类型 |
描述 |
date() |
日期。格式:YYYY-MM-DD |
datetime() |
日期和时间的组合。格式:YYYY-MM-DD HHMMSS |
timestamp() |
时间戳。格式:YYYY-MM-DD HH:MM:SS |
time() |
时间。格式:HH:MM:SS |
year() |
2位或4位格式的年 |
注意:尽管datetime和timestamp返回相同的格式,它们的工作方式不同。在insert或update操作中,timestamp会自动把自身设置为当前时间,并且timestamp支持的范围是:’1970-01-01 00:00:01’ UTC 到 ‘2038-01-09 03:14:07’ UTC。