您的位置:首页 > 数据库 > MySQL

MySQL数据类型

2014-12-17 10:53 246 查看
MySQL中的数据类型大致可以分为三类:数值、日期/时间和字符串(字符)类型。

1、数值类型

类型大小范围(有符号)范围(无符号)用途
TINYINT1字节(-128, 127)(0, 255)小整数值
SMALLINT2字节(-32 768, 32 767)(0, 65 535)大整数值
MEDIUMINT3字节(-8 388 608, 8 388 607)(0, 16 777 215)大整数值
INT或INTEGER4字节(-2 147 483 648, 2 147 483 647)(0, 4 294 967 295)大整数值
BIGINT8字节(-9 233 372 036 854 775 808,

9 223 372 036 854 775 807)
(0, 18 446 744 073 709 551 615)极大整数值
FLOAT4字节(-3.402 823 466 E+38,

1.175 494 351 E-38),

0,

(1.175 494 351 E-38,

3.402 823 466 351 E+38)
0,

(1.175 494 351 E-38, 3.402 823 466 E+38)
单精度

浮点数值
DOUBLE8字节(1.797 693 134 862 315 7 E+308,

2.225 073 858 507 201 4 E-308),

0,

(2.225 073 858 507 201 4 E-308,

1.797 693 134 862 315 7 E+308)
0,

(2.225 073 858 507 201 4 E-308,

1.797 693 134 862 315 7 E+308)
双精度

浮点数值
DECIMAL对DECIMAL(M,D)

如果M>D

为M+2否则为D+2
依赖于M和D的值依赖于M和D的值小数值
2、字符串类型

类型

大小用途
CHAR

0-255字节

定长字符串

VARCHAR

0-255字节

变长字符串

TINYBLOB

0-255字节

不超过255个字符的二进制字符串

TINYTEXT

0-255字节

短文本字符串

BLOB

0-65 535字节

二进制形式的长文本数据

TEXT

0-65 535字节

长文本数据

MEDIUMBLOB

0-16 777 215字节

二进制形式的中等长度文本数据

MEDIUMTEXT

0-16 777 215字节

中等长度文本数据

LOGNGBLOB

0-4 294 967 295字节

二进制形式的极大文本数据

LONGTEXT

0-4 294 967 295字节

极大文本数据
CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

BINARY和VARBINARY类类似于CHAR和VARCHAR,不同的是它们包含二进制字符串而不要非二进制字符串。

也就是说,它们包含字节字符串而不是字符字符串。这说明它们没有字符集,并且排序和比较基于列值字节的数值值。

BLOB是一个二进制大对象,可以容纳可变数量的数据。有4种BLOB类型:TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB。它们只是可容纳值的最大长度不同。

有4种TEXT类型:TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。这些对应4种BLOB类型,有相同的最大长度和存储需求。

3、日期和时间类型

每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。

类型

大小(字节)范围格式用途
DATE

31000-01-01/9999-12-31

YYYY-MM-DD

日期值

TIME

3'-838:59:59'/'838:59:59'

HH:MM:SS

时间值或持续时间

YEAR

11901/2155

YYYY

年份值

DATETIME

81000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS

混合日期和时间值

TIMESTAMP

81970-01-01 00:00:00/2037 年某时YYYYMMDD HHMMSS

混合日期和时间值,时间戳
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: