本篇文章给大家带来的内容是关于Mysql数据类型的详细总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

在进行数据存储之前,我们先了解一下mysql的数据类型。数据类型是什么呢?数据类型就是指列;存储过程中参数,表达式和局部变量的数据特征,它决定了数据的存储方式,代表了不同的信息类型。(推荐课程:MySQL教程)

整型:

整型常指整数,但是在整型中可以细分5种类型,TINYNIT,SMALLINT,MEDIUMINT,INT,BIGINT。类型存储范围占用字节TINYINT有符号值:-128到127(-2^7 到 2^7-1)

无符号值:0到255 (0 到 2^8-1)1

SMALLINT有符号值: -32768到32767 (-2^15 到 2^15-1)

无符号值:0 到 65535 (0 到 2^16-1)2

MEDIUMINT有符号值: -8388608 到 8388607 (-2^23 到 2^23-1)

无符号值:0 到16777215 (2^24-1)3

INT有符号值 : -2147483648到2147483647 (-2^31 到 2^31-1)

无符号值: 0 到 4294967295 (2^32-1)4

BIGINT有符号值 :-9223372036854775808 到 9223372036854775807 (-2^63 到 2^63-1)

无符号值:0 到 18446744073709551615 (2^64-1)8

浮点数

浮点数常指具有小数的数字,浮点数种分两种类型,FLOAT单精度浮点数,DOUBLE双精度浮点数。双精度浮点数的精准度为单精度的浮点数的十倍,但是占用的内存就会更大。类型存储范围FLOAT[(M,D)]-3.402823466E+38 到 -1.175494351E-38,0和1.175494351E-38 到 3.402823466E+38

M表示数字总位数,D表示小数点后面的位数。如果M和D被省略,根据硬件允许的限制来保存值。单精度浮点数精确大约7位小数点。

DOUBLE-1.7976931348623157E+308 到 -2.2250738585072014E-308,0和2.2250738585072014E-308 到 1.7976931348623157E+308

M表示数字总位数,D表示小数点后面的位数。如果M和D被省略,根据硬件允许的限制来保存值。单精度浮点数精确大约7位小数点。

字符型

字符型是我们非常常用的一种类型,比如字符串。字符型具有8个类型。类型存储范围CHAR(M)M个字节,其中M为0<=M<=255

VARCHAR(M)L+1个字节,其中L<=M且0<=M<=65536

TINYTEXTL+1个字节,其中L<2^8

TEXTL+2个字节,其中L<2^16

MIUDMTEXTL+3个字节,其中L<2^24

LONGTEXTL+4个字节,其中L<2^32

ENUM('val','val')1或2个字节,取决枚举的个数(最多65535个值)

SET('val','val','val')1,2,3,4或8个字节,取决于set成员的数目(最多64个)

这一节我们先了解清楚mysql的数据类型,下一节我们学习如何创建一个数据表。