MySQL 数据类型

时间:2019-02-04 12:52:27  来源:igfitidea点击:

下面是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是精度。
BOOLTINYINT(1)的同义词被视为布尔数据类型,其中值0被认为是FALSE,而其他任何值都被认为是TRUE。
BOOLEANTINYINT(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[(24)]年份值是2位或4位数字。

大对象(LOB)数据类型

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

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