关系型数据库的数据类型主要包括以下几种:
- 基础数据类型:
数值类型:包括TINYINT(1-8字节整数)、SMALLINT(1-16字节整数)、MEDIUMINT(1-24字节整数)、INT(1-24字节整数,通常用于存储用户ID等)和BIGINT(1-96字节整数,用于存储大数值或长整数)。
浮点数类型:FLOAT(单精度浮点数,存储约3.4E+38个数值)和DOUBLE(双精度浮点数,存储约1.7E+308个数值)。
定点类型:DECIMAL(定点数,用于存储精确的小数值)和NUMERIC(与DECIMAL类似,但更灵活)。
字符串类型:CHAR(固定长度字符串)、VARCHAR(可变长度字符串)、TEXT(长文本数据)和BLOB(二进制大对象,用于存储图像、音频、视频等非文本数据)。
- 日期和时间类型:
DATE(日期值,格式为YYYY-MM-DD)。
TIME(时间值,格式为HH:MM:SS)。
DATETIME(日期和时间值,格式为YYYY-MM-DD HH:MM:SS)。
TIMESTAMP(时间戳值,表示从1970年1月1日00:00:01 UTC到当前时间的秒数)。
YEAR(年份值)。
MONTH(月份值)。
DAY(日期值)。
HOUR(小时值)。
MINUTE(分钟值)。
SECOND(秒值)。
- 其他复杂数据类型:
JSON(用于存储JSON数据)。
GEOMETRY(用于存储空间数据,如几何图形)。
JSONB(用于存储二进制格式的JSON数据)。
UUID(通用唯一识别码,用于生成全局唯一的标识符)。
***关系型数据库还支持其他一些特殊的数据类型,如枚举类型(只能取预定义的值集合中的值)、集合类型(可以存储一组无序且不重复的值)以及数组类型(可以存储一组有序的值)。**,这些类型的具体实现可能因数据库管理系统(DBMS)的不同而有所差异。