时间类型
-
DATE:
- 存储日期,格式为'YYYY-MM-DD',范围从'1000-01-01'到'9999-12-31'。
- 用于存储日期信息。
-
TIME:
- 存储时间,格式为'HH:MM:SS',范围从'-838:59:59'到'838:59:59'。
- 用于存储时间信息。
-
DATETIME:
- 存储日期和时间,格式为'YYYY-MM-DD HH:MM:SS',范围从'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。
- 用于存储日期和时间的组合信息。
-
TIMESTAMP:
- 存储时间戳,格式为'YYYY-MM-DD HH:MM:SS',范围从'1970-01-01 00:00:01' UTC到'2038-01-19 03:14:07' UTC。
- 存储自1970年1月1日起的秒数,适合记录时间的变化。
对应Java中的数据类型
DATE:
- 对应Java中的java.sql.Date类型。
- 用于表示日期,精确到天。
TIME:
- 对应Java中的java.sql.Time类型。
- 用于表示时间,精确到秒。
DATETIME / TIMESTAMP:
- 对应Java中的java.sql.Timestamp类型。
- 用于表示日期和时间,精确到毫秒。
文本类型
-
CHAR(n):
- 定长字符串,最大长度为255个字符。
- 存储固定长度的字符串,如果字符串长度小于n,则右侧会填充空格。
-
VARCHAR(n):
- 变长字符串,最大长度为65535个字符。
- 存储可变长度的字符串,实际使用的存储空间与字符串长度成正比。
-
TEXT:
- 可变长度字符串,最大长度为65535个字符。
- 用于存储大文本数据,可以容纳较长的字符串,适合存储文章、博客内容等。
-
TINYTEXT/ MEDIUMTEXT/ LONGTEXT:
- 分别对应不同的文本长度,最大长度分别为255、16777215和4294967295个字符。
- 适用于存储不同长度范围的文本数据。
-
LONGBLOB
-
`FILE_DATA` longblob COMMENT '用例数据'
-
在java中生成的实体类对应的字段类型为 byte[ ];
-
选择这种方式落库的特点在于,想要查看存下来的数据需要先解析 二进制数据,不能直观看到文本内容。
-
-
LONGTEXT
-
`RESULT_DATA` longtext COMMENT '执行结果数据'
-
选择这种方式落库的特点在于,查看文本内容不需要解析,读出来即可用,或者直接从数据库表就能查看;
-
对应Java中的数据类型
CHAR(n) / VARCHAR(n) / TEXT / TINYTEXT / MEDIUMTEXT / LONGTEXT:
- 对应Java中的String类型。
- 字符串类型在Java中用String类表示,可以存储任意长度的字符串数据。
数值类型
-
INT/INTEGER:
- 存储整数值,范围从-2147483648到2147483647。
- 用于存储普通整数。
-
BIGINT:
- 存储大整数值,范围从-9223372036854775808到9223372036854775807。
- 用于存储大整数,范围比INT更大。
-
FLOAT:
- 存储单精度浮点数值,范围约为-3.402823466E+38到-1.175494351E-38、0和1.175494351E-38到3.402823466E+38。
- 用于存储具有小数点的数字。
-
DOUBLE:
- 存储双精度浮点数值,范围约为-1.7976931348623157E+308到-2.2250738585072014E-308、0和2.2250738585072014E-308到1.7976931348623157E+308。
- 用于存储双精度小数。
-
DECIMAL:
- 存储精确的小数值,范围由用户指定。
- 用于存储对精度要求较高的小数,如货币值。
对应Java中的数据类型
INT / INTEGER:
- 对应Java中的int类型/java.lang.Integer类型。
- 用于表示整数值。
BIGINT:
- 对应Java中的long类型或java.lang.Long类型。
- 用于表示大整数值。
FLOAT:
- 对应Java中的float类型或java.lang.Float类型。
- 用于表示单精度浮点数值。
DOUBLE:
- 对应Java中的double类型或java.lang.Double类型。
- 用于表示双精度浮点数值。
DECIMAL:
- 对应Java中的java.math.BigDecimal类型。
- 用于表示精确的小数值,适用于货币等精度要求较高的场景。