MySQL 字段类型选择规范指南

选对字段类型是核心设计决策:整数按需取最小且优先无符号;金融数据必用DECIMAL;字符串首选VARCHAR,定长极短字段可用CHAR;时间统一用DATETIME;枚举改用TINYINT+字典表。选对字段类型不是细节问题,而是直接影响存储效率、查询性能和数据准确性的核心设计决策。关键不在"能用",而在"刚好够用"------小一点更省空间,确定性更强更少出错。整数类型:按需取最小,无符号优先整数类型要从 TINYINT → SMALLINT → MEDIUMINT → INT → BIGINT 逐级往上选,只用能满足业务最大值的最小类型。状态、开关、性别、年级等:用 TINYINT UNSIGNED(0~255),1 字节,快且省 用户 ID、订单号(预估不超 42 亿):用 INT UNSIGNED(0~4294967295),4 字节,通用稳妥 高频写入的超大规模表主键(如日志、消息ID):用 BIGINT UNSIGNED,避免未来溢出 明确不存负数的字段,一律加 UNSIGNED,既扩大正数范围,又防止误插负值 别用 INT(11) 这类带显示宽度的写法------它不影响存储和取值,纯属历史遗留显示控制,可忽略小数类型:金融必用 DECIMAL,浮点仅限科学场景FLOAT 和 DOUBLE 存的是近似值,计算时有精度漂移风险;DECIMAL 存的是精确十进制数,适合所有需要保真的场景。 RedClaw 百度推出的手机端万能AI Agent助手

相关推荐
憧憬成为web高手6 分钟前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学19 分钟前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
白露与泡影2 小时前
Arthas 实战指南:从方法耗时定位到 JVM 变量热修改
服务器·jvm·c#
oradh2 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
C^h3 小时前
python函数学习
人工智能·python·机器学习
Fanta丶3 小时前
4.Python set()集合、dict(字典、映射)、 数据容器的通用功能
python
决战灬3 小时前
langgraph之interrupt(理论篇)
人工智能·python·agent
z123456789863 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD3 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关
兜客互动3 小时前
2026年AI关键词拓展挖掘软件,高效助力内容创作精准获流
人工智能·python