1. 数值类型
- 整数类型:
TINYINT
:1 字节,范围 -128 到 127(或 0 到 255)。SMALLINT
:2 字节,范围 -32,768 到 32,767(或 0 到 65,535)。MEDIUMINT
:3 字节,范围 -8,388,608 到 8,388,607(或 0 到 16,777,215)。INT
或INTEGER
:4 字节,范围 -2,147,483,648 到 2,147,483,647(或 0 到 4,294,967,295)。BIGINT
:8 字节,范围 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807(或 0 到 18,446,744,073,709,551,615)。
- 浮点数类型:
FLOAT
:单精度浮点数,4 字节。DOUBLE
:双精度浮点数,8 字节。DECIMAL
或NUMERIC
:可指定精度和小数位数的定点数。
2. 字符串类型
CHAR
:固定长度字符串,最大长度为 255。VARCHAR
:可变长度字符串,最大长度为 65,535。TEXT
:可存储长文本,最大长度为 65,535。TINYTEXT
:短文本,最大长度为 255。MEDIUMTEXT
:中等长度文本,最大长度为 16,777,215。LONGTEXT
:最长文本,最大长度为 4,294,967,295。BINARY
:固定长度的二进制数据。VARBINARY
:可变长度的二进制数据。
3. 日期和时间类型
DATE
:日期,格式为YYYY-MM-DD
。TIME
:时间,格式为HH:MM:SS
。DATETIME
:日期和时间,格式为YYYY-MM-DD HH:MM:SS
。TIMESTAMP
:时间戳,格式为YYYY-MM-DD HH:MM:SS
,存储时间的同时也会记录时间变化。YEAR
:年份,格式为YYYY
。
4. 布尔类型
BOOLEAN
:布尔类型,存储TRUE
或FALSE
,在底层是TINYINT(1)
。
5. JSON 类型
JSON
:用于存储 JSON 格式的数据。
6. 枚举和集合类型
ENUM
:枚举类型,表示一个字符串值,值可以从预定义的列表中选择。SET
:集合类型,可以存储多个字符串值,值可以从预定义的列表中选择。
7. 其他类型
- 空间数据类型(如
GEOMETRY
、POINT
、LINESTRING
等):用于存储地理信息。