MySQL 数据类型


下面是MySQL中可用的数据类型列表,其中包括字符串、数字、日期/时间和大型对象数据类型。

字符串数据类型

下面是MySQL中的字符串数据类型:

数据类型语法 最大大小 说明
CHAR(size) 255个字符。 其中size是要存储的字符数。固定长度的字符串。在右边填充空格以使字符大小相等。
VARCHAR(size) 255个字符。 其中size是要存储的字符数。可变长度的字符串。
TINYTEXT(size) 255个字符。 其中size是要存储的字符数。
TEXT(size) 65,535个字符。 其中size是要存储的字符数。
MEDIUMTEXT(size) 16,777,215个字符。 其中size是要存储的字符数。
LONGTEXT(size) 4GB或4,294,967,295个字符。 其中size是要存储的字符数。
BINARY(size) 255个字符。 其中size是要存储的二进制字符数。定长字符串。在右边填充空格以使字符大小相等。(在MySQL 4.1.2中引入)
VARBINARY(size) 255个字符。 其中size是要存储的字符数。可变长度的字符串。(在MySQL 4.1.2中引入)

数值数据类型

以下是MySQL 中的数值数据类型:

数据类型 最大大小 说明
BIT 非常小的整数值,相当于TINYINT(1)。有符号值的范围是-128至127。无符号值的范围是0至255。
TINYINT(m) 很小的整数值。有符号值的范围是-128至127。无符号值的范围是0至255。
SMALLINT(m) 小型整数值。有符号值的范围是-32768到32767。无符号值的范围是0到65535。
MEDIUMINT(m) 中型整数值。有符号值的范围是-8388608至8388607。无符号值的范围是0至16777215。
INT(m) 标准整数值。有符号值的范围是-2147483648至2147483647。无符号值的范围是0至4294967295。
INTEGER(m) 标准整数值。有符号值的范围是-2147483648至2147483647。无符号值的范围是0至4294967295。 这是INT数据类型的同义词。
BIGINT(m) 大整数值。有符号值的范围是-9223372036854775808至922337203685477575807。无符号值的范围是0至18446744073709551615。
DECIMAL(m,d) 定点数(fixed point number)。m默认为10。d默认为0。 其中,m是总位数,d是小数点后的位数。
DEC(m,d) 定点数。m默认为10。d默认为0。 其中,m是总位数,d是小数点后的位数。
NUMERIC(m,d) 定点数。m默认为10。d默认为0。 其中,m是总位数,d是小数点后的位数。这是DECIMAL数据类型的同义词。
FIXED(m,d) 定点数。m默认为10。d默认为0。 其中,m是总位数,d是小数点后的位数。(在MySQL 4.1中引入)这是DECIMAL数据类型的同义词。
FLOAT(m,d) 单精度浮点数。 其中,m是总位数,d是小数点后的位数。
DOUBLE(m,d) 双精度浮点数。 其中,m是总位数,d是小数点后的位数。
DOUBLE PRECISION(m,d) 双精度浮点数。 其中,m是总位数,d是小数点后的位数。这是DOUBLE数据类型的同义词。
REAL(m,d) 双精度浮点数。 其中,m是总位数,d是小数点后的位数。这是DOUBLE数据类型的同义词。
FLOAT(p) 浮点数。 其中p是精度。
BOOL TINYINT(1)的同义词 被视为布尔数据类型,其中值0被认为是FALSE,而其他任何值都被认为是TRUE。
BOOLEAN TINYINT(1)的同义词 被视为布尔数据类型,其中值0被认为是FALSE,而其他任何值都被认为是TRUE。

日期/时间数据类型

以下是MySQL 中的日期/时间数据类型:

数据类型 最大大小 说明
DATE 日期,值的范围是从"1000-01-01"到"9999-12-31"。 显示为"YYYY-MM-DD"。
DATETIME 日期时间,值的范围从"1000-01-01 00:00:00"到"9999-12-31 23:59:59"。 显示为"YYYY-MM-DD HH:MM:SS"。
TIMESTAMP(m) 时间戳,值的范围是UTC的"1970-01-01 00:00:01"到UTC的"2038-01-19 03:14:07"。 显示为"YYYY-MM-DD HH:MM:SS"。
TIME 时间,值的范围从"-838:59:59"到"838:59:59"。 显示为"HH:MM:SS"。
YEAR[(2 4)] 年份值是2位或4位数字。

大对象(LOB)数据类型

以下是MySQL中的LOB数据类型:

数据类型 最大大小 说明
TINYBLOB 255个字节。
BLOB(size) 65,535字节。 其中size是要存储的字符数(size是可选的,是MySQL 4.1中引入的)
MEDIUMBLOB 16,777,215字节。
LONGTEXT 4GB或4,294,967,295个字符。


原文链接:https://codingdict.com/