品易云推流 关闭
文章详情页
文章 > MySQL > mysql数据类型有哪些?

mysql数据类型有哪些?

mysql数据类型

头像

宋雪维

2021-03-11 16:54:476184浏览 · 0收藏 · 0评论

banner80(5).png

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电脑。)

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图