MySQL:数据类型
以下是MySQL中可用的数据类型列表,其中包括字符串,数字,日期/时间和大对象数据类型。
字符串数据类型
以下是MySQL 中的String数据类型:
数据类型语法 | 最大尺寸 | 说明 |
---|---|---|
CHAR(大小) | 最大大小为255个字符。 | 其中size是要存储的字符数。固定长度的字符串。空格填充在右侧相等大小的字符上。 |
VARCHAR(大小) | 最大大小为255个字符。 | 其中size是要存储的字符数。可变长度字符串。 |
TINYTEXT(尺寸) | 最大大小为255个字符。 | 其中size是要存储的字符数。 |
文字(大小) | 最大大小为65,535个字符。 | 其中size是要存储的字符数。 |
MEDIUMTEXT(尺寸) | 最大大小为16,777,215个字符。 | 其中size是要存储的字符数。 |
LONGTEXT(尺寸) | 最大大小为4GB或4,294,967,295个字符。 | 其中size是要存储的字符数。 |
二进制(大小) | 最大大小为255个字符。 | 其中size是要存储的二进制字符数。固定长度的字符串。空格填充在右侧相等大小的字符上。 (在MySQL 4.1.2中引入) |
VARBINARY(大小) | 最大大小为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至9223372036854775807.无符号值的范围为0至18446744073709551615。 | |
DECIMAL(m,d) | 解包固定点数。如果未指定, m默认为10。如果未指定,则 d默认为0。 | 其中m是总位数,d是小数点后的位数。 |
DEC(m,d) | 解包固定点数。如果未指定, m默认为10。如果未指定,则 d默认为0。 | 其中m是总位数,d是小数点后的位数。 这是DECIMAL数据类型的同义词。 |
NUMERIC(m,d) | 解包定点数。如果未指定, m默认为10。如果未指定,则 d默认为0。 | 其中m是总位数,d是小数点后的位数。 这是DECIMAL数据类型的同义词。 |
固定(m,d) | 解包定点数。如果未指定, m默认为10。如果未指定,则 d默认为0。 | 其中m是总位数,d是小数点后的位数。 (在MySQL 4.1中引入) 这是DECIMAL数据类型的同义词。 |
FLOAT(m,d) | 单精度浮点数。 | 其中m是总位数,d是小数点后的位数。 |
双倍(m,d) | 双精度浮点数。 | 其中m是总位数,d是小数点后的位数。 |
双精度(m,d) | 双精度浮点数。 | 其中m是总位数,d是小数点后的位数。 这是DOUBLE数据类型的同义词。 |
REAL(m,d) | 双精度浮点数。 | 其中m是总位数,d是小数点后的位数。 这是DOUBLE数据类型的同义词。 |
FLOAT(P) | 浮点数。 | 其中p是精度。 |
BOOL | TINYINT的同义词(1) | 作为布尔数据类型处理,其中值0被视为FALSE,任何其他值被视为TRUE。 |
布尔 | TINYINT的同义词(1) | 作为布尔数据类型处理,其中值0被视为FALSE,任何其他值被视为TRUE。 |
日期/时间数据类型
以下是MySQL 中的日期/时间数据类型:
数据类型语法 | 最大尺寸 | 说明 |
---|---|---|
日期 | 值范围从'1000-01-01'到'9999-12-31'。 | 显示为'YYYY-MM-DD'。 |
约会时间 | 值范围从'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。 | 显示为'YYYY-MM-DD HH:MM:SS'。 |
TIMESTAMP(m) | 值范围从'1970-01-01 00:00:01'UTC到'2038-01-19 03:14:07'UTC。 | 显示为'YYYY-MM-DD HH:MM:SS'。 |
时间 | 值范围从'-838:59:59'到'838:59:59'。 | 显示为'HH:MM:SS'。 |
YEAR [(2 | 4)] | 年份值为2位数或4位数。 | 默认值为4位数。 |
大对象(LOB)数据类型
以下是MySQL 中的LOB数据类型:
数据类型语法 | 最大尺寸 | 说明 |
---|---|---|
TINYBLOB | 最大大小为255个字节。 | |
BLOB(大小) | 最大大小为65,535字节。 | 其中size是要存储的字符数(大小是可选的,在MySQL 4.1中引入) |
MEDIUMBLOB | 最大大小为16,777,215字节。 | |
LONGTEXT | 最大大小为4GB或4,294,967,295个字符。 |