MySQL 数据类型
MySQL 中的数据类型用于定义列(字段)可以存储的数据范围和格式。以下是 MySQL 中常用的一些数据类型及其用途:
数值类型
INTEGER / INT/TINYINT/SMALLINT/MEDIUMINT/BIGINT: 整数类型,可以指定长度,例如 INT(11)。
FLOAT: 单精度浮点数,用于存储较小的浮点数,占用 4 个字节。
DOUBLE: 双精度浮点数,用于存储较大或较精确的浮点数,占用 8 个字节。
DECIMAL: 用于存储精确的小数值,例如 DECIMAL(10, 2) 表示最多 10 位数,其中 2 位是小数,点用M+2 个字节。
字符串类型
CHAR: 固定长度的字符串,最多 255 字符。
VARCHAR: 可变长度的字符串,最多 65535 字符。
TEXT: 较长的文本数据,最多 65535 字符。
ENUM: 枚举类型,用于存储枚举值中的一个。
日期和时间类型
DATE: 日期,格式为 'YYYY-MM-DD'
TIME: 时间,格式为 'HH:MM:SS'
DATETIME: 日期和时间,格式为 'YYYY-MM-DD HH:MM'
TIMESTAMP: 时间戳,存储从 1970 年 1 月 1 日起的秒数。
其他类型
BOOLEAN / BOOL: 用于存储布尔值,通常与 TINYINT(1) 同义。
BINARY: 二进制数据,固定长度。
VARBINARY: 可变长度的二进制数据。
JSON: 存储 JSON 数据。
自定义数据类型
MySQL 还支持用户自定义数据类型,这些类型可以是枚举值、别名或其他用户自定义的类型。
使用示例:
CREATE TABLE users ( user_id INT AUTO_INCREMENT PRIMARY KEY, user_name VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, birthdate DATE, profile_json JSON );
这个示例创建了一个 users 表,其中包含了整数、字符串、日期和 JSON 数据类型的列。