MySQL 提供了多种数据类型,用于存储各种类型的数据。以下是常见的 MySQL 数据类型分类及其说明:
数值类型:
-
整数类型:
TINYINT
: 小整数类型,范围为 -128 到 127 (有符号)或 0 到 255 (无符号)。SMALLINT
: 较小的整数类型,范围为 -32768 到 32767 (有符号)或 0 到 65535 (无符号)。MEDIUMINT
: 中等大小整数类型,范围为 -8388608 到 8388607 (有符号)或 0 到 16777215 (无符号)。INT
或INTEGER
: 标准整数类型,范围为 -2147483648 到 2147483647 (有符号)或 0 到 4294967295 (无符号)。BIGINT
: 大整数类型,范围为 -9223372036854775808 到 9223372036854775807 (有符号)或 0 到 18446744073709551615 (无符号)。
-
浮点数类型:
FLOAT
: 单精度浮点数,适合非常大的数值范围。DOUBLE
或REAL
: 双精度浮点数,适合大范围和高精度的浮点数。
-
定点数类型:
DECIMAL
或NUMERIC
: 用于存储定点数,对于货币等需要精确小数位数的场景更为适用。
字符串类型:
- 固定长度字符串:
CHAR
: 固定长度的字符串,最多 255 个字符。
- 可变长度字符串:
VARCHAR
: 可变长度的字符串,最多 65535 个字符。TEXT
: 可变长度的文本字符串,最多存储 65535 个字符。LONGTEXT
: 长文本字符串,最多存储 4GB 的数据。
日期和时间类型:
-
日期类型:
DATE
: 存储日期,格式为 'YYYY-MM-DD'。
-
时间类型:
TIME
: 存储时间,格式为 'HH:MM:SS'。DATETIME
: 存储日期和时间,格式为 'YYYY-MM-DD HH:MM:SS'。TIMESTAMP
: 存储时间戳,与时区相关,在特定时间下表示特定日期和时间。
其他类型:
-
布尔类型:
BOOLEAN
或BOOL
: 存储布尔值,通常表示为 0 或 1。
-
二进制类型:
BINARY
: 存储固定长度的二进制数据。VARBINARY
: 存储可变长度的二进制数据。BLOB
: 用于存储二进制数据,最多存储 65535 个字节。
-
枚举类型:
ENUM
: 用于存储枚举类型,允许从一个预定义的可选值列表中选择一个值。
-
集合类型:
SET
: 用于存储一个或多个预定义的字符串值。
MySQL 提供了多种数据类型,可以根据具体需求和数据特点选择合适的数据类型来存储数据。