本文共 2084 字,大约阅读时间需要 6 分钟。
数据类型是数据库设计中最重要的组成部分之一。不同的数据类型在存储、处理和处理数据时有不同的特性和限制。以下是常见的数据库数据类型及其详细信息:
类型 | 存储字节 | 备注 | 最小值(带符号) | 最大值(带符号) | 最小值(无符号) | 最大值(无符号) |
---|---|---|---|---|---|---|
tinyint(length) | 1 | 无符号范围:0-255带符号范围:-128 到 127 | 0 | 255 | 0 | 255 |
smallint(length) | 2 | 无符号范围:0-65535带符号范围:-32768 到 32767 | 0 | 65535 | 0 | 65535 |
mediumint(length) | 3 | 无符号范围:0-16777215带符号范围:-8388608 到 8388607 | 0 | 16777215 | 0 | 16777215 |
int(length) | 4 | 无符号范围:0-4294967295带符号范围:-2147483648 到 2147483647 | 0 | 4294967295 | 0 | 4294967295 |
bigint(length) | 8 | 无符号范围:0-18446744073709551615带符号范围:-9223372036854775808 到 9223372036854775807 | 0 | 18446744073709551615 | 0 | 18446744073709551615 |
float(length, decimals) | 4 | 具有浮动小数点的较小的数,支持小数点默认小数位数:4 | - | + | - | + |
double(length, decimals) | 8 | 具有浮动小数点的较大的数,支持更多小数位数 | - | + | - | + |
decimal(length, decimals) | 1-2字节 | 存储为字符串,允许固定小数点 | - | + | - | + |
date | 3 | YYYY-MM-DD 格式,日期范围:1000-01-01 到 9999-12-31 | - | + | - | + |
time | 3 | HH:MM:SS 格式,时间范围:00:00:00 到 23:59:59 | - | + | - | + |
timestamp | 4 | YYYYMMDDHHMMSS 格式,范围终止于2037年 | - | + | - | + |
datetime | 8 | YYYY-MM-DD HH:MM:SS 格式,范围终止于9999-12-31 23:59:59 | - | + | - | + |
char(length) | length字节 | 定长字段,长度范围:0-255 | - | + | - | + |
varchar(length) | length+1-2字节 | 变长字段,长度范围:0-65535 | - | + | - | + |
tinytext | length+1字节 | 字符串字段,最大长度为255 | - | + | - | + |
text | length+2字节 | 字符串字段,最大长度为65535 | - | + | - | + |
mediumint(length) | length+3字节 | 字符串字段,最大长度为16 777 215 | - | + | - | + |
longtext | length+4字节 | 字符串字段,最大长度为4 294 967 295 | - | + | - | + |
tinyint
或 smallint
,适用于占用字节最少的整数字段。float
或 double
,注意 double
的精度更高。char
或 varchar
,varchar
更适合变长字段。date
、time
、timestamp
或 datetime
。bigint
或 longint
。NOT NULL
,业务需求如需默认值可自定义。NULL
,避免三值逻辑运算。create_time
和 update_time
字段。status
或 type
):使用 tinyint
或 smallint
,占用字节最少。bigint
类型,命名为 id
。char
:长度固定,存储效率高,适合定长字符串。varchar
:长度可变,存储效率稍低,适合变长字段。tinyint(1)
和 tinyint(3)
:相同,占用1字节。int(1)
vs tinyint(1)
:优先选择 tinyint(1)
,节省空间。tinyint
:1字节,smallint
:2字节,mediumint
:3字节,int
:4字节,bigint
:8字节。通过合理选择数据类型,可以显著提升数据库的性能和可维护性。
转载地址:http://njdfk.baihongyu.com/