mysql的数据类型大致可以分为数值类型、字符串类型和日期时间类型这三种类型。
一、数值类型
1、数值是诸如32 或153.4 这样的值。
2、mysql支持科学表示法,科学表示法由整数或浮点数后跟“e”或“E”、一个符号(“+”或“-”)和一个整数指数来表示。1.24E+12 和23.47e-1 都是合法的科学表示法表示的数。而1.24E12 不是合法的,因为指数前的符号未给出。
3、浮点数由整数部分、一个小数点和小数部分组成。整数部分和小数部分可以分别为空,但不能同时为空。
4、数值前可放一个负号“-”以表示负值。
二、字符串类型
字符串类型指CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。
常见类型如下:
CHAR[(M)] :
一个固定长度的字符串,在存储时始终用空格填充指定长度。 M表示以字符为单位的列长度。M的范围为0到255.如果M省略,则长度为1,存储时占用M个字节。
VARCHAR(M):
可变长度的字符串,M 表示字符的列长度,M的范围是0到65,535,存储时占用L+1(L<=M,L为实际字符的长度)个字节。
TINYTEXT[(M)]
:不能有默认值,占用L+1个字节,L<2^8。
TEXT[(M)]
:不能有默认值,占用L+2个字节,L<2^16。
MEDIUMTEXT[(M)]
:不能有默认值,占用L+3个字节,L<2^24。
LONGTEXT[(M)] :
不能有默认值,占用L+4个字节,L<2^32。
ENUM('value1','value2',...)
:ENUM是一个字符串对象,其值从允许值列表中选择,它只能有一个值,从值列表中选择,最多可包含65,535个不同的元素。
SET('value1','value2',...)
:字符串对象,该对象可以有零个或多个值,最多可包含64个不同的成员。
三、日期时间类型
1、year类型只表示年份。如果只需要记录年份,选择year类型可以节约空间。
2、Time类型只表示时间,如果只需要记录时间,选择Time类型是最合适的。
3、date类型只表示日期,如果只需要记录日期,选择date类型是最合适的。
4、如果需要记录日期和时间,可以选择dateTime类型和timestamp类型。
5、dateTime类型表示的时间范围比timestamp类型大,因此,如果需要的时间范围比较大,选择dateTime类型比较合适。
6、timestamp类型的时间是根据时区来显示的,如果需要显示的时间与时区对应,那就应该选择timestamp类型。
补充:mysql的数据类型描述使应注意以下内容
M表示整数类型的显示宽度。M表示整数类型的显示宽度。对于浮点和定点类型, M是可以存储的总位数(精度)。对于字符串类型, M是长度。允许的值M取决于数据类型。
D适用于浮点和定点类型,并指示小数点后面的位数。可能值为30,但不应大于 M-2。
[ ]表示类型定义的可选部分。
本文介绍mysql的数值类型、字符串类型和日期时间类型,希望能对你的mysql学习有所帮助~更多MySQL学习推荐:python学习网MySQL教程。
(推荐操作系统:windows7系统、mysql5.8,DELL G3电脑。)