MySQL开发规范详解:核心原则与最佳实践
需积分: 10 98 浏览量
更新于2024-07-18
收藏 309KB PDF 举报
"MySQL规范(系列一)是关于MySQL数据库开发的一份文档,涵盖了核心规范、基础规范、表设计规范、索引类规范、SQL使用规范以及行为规范等多个方面,旨在提升开发人员的数据库设计和操作技能。"
1. **核心规范**
- 不在数据库进行计算,将CPU密集型计算转移到业务层处理。
- 控制单表的数据量,避免单表记录超过千万级别。
- 在效率和范式之间寻找平衡,必要时允许适当的数据冗余。
- 避免大SQL、大事务和大批量操作(3B原则)。
2. **基础规范**
- 禁止在日常业务中使用存储过程、视图和触发器。
- 数据库中不应存储文件或图片。
- 强制使用InnoDB存储引擎,以保证事务处理和行级锁定。
- 使用utf8mb4字符集,支持更多的Unicode字符,包括APP端的表情。
- 表和字段需添加中文注释。
- 使用内网域名而非IP连接数据库。
- 库名、表名、字段名采用小写和下划线命名方式,不超过四个单词,且应直观表达含义,禁止混合拼音和英文。
- 控制单库的表数量不超过500张,每个表的字段数量不超过30个。
3. **表设计规范**
- 禁止使用TEXT和BLOB类型,考虑其他存储方式。
- 不建议使用小数存储货币,建议以整数(如分)存储。
- 不使用ENUM类型,可使用TINYINT替代。
- 不使用外键,通过应用程序来控制数据完整性。
- 避免使用NULL,定义字段为NOT NULL并提供默认值。
- 主键id应为自增类型。
- 新建表必须包含id、create_time、remark字段,可选update_time和operator。
- 统一日期类型为datetime(3),确保毫秒级精度。
- 选择合适的数字类型,优先使用数值类型而不是字符串类型。
4. **索引类规范** (未提供具体内容,但通常包括合理创建和使用主键、唯一键和普通索引,避免全表扫描,优化查询性能等)
5. **SQL使用规范** (未提供具体内容,可能包括编写高效的SQL语句,避免全表扫描,正确使用JOIN操作,合理利用索引等)
6. **行为规范** (未提供具体内容,可能涉及代码审查、数据库变更管理、错误处理和日志记录等方面)
这份规范文档为MySQL开发提供了全面的指导,遵循这些规则有助于提高数据库性能、数据安全性和维护性。在实际开发中,应根据项目需求和团队约定灵活调整和应用这些规范。
2023-11-12 上传
2023-07-04 上传
2023-09-23 上传
2023-09-03 上传
2023-07-23 上传
2023-07-13 上传
快乐可以当钱花
- 粉丝: 4
- 资源: 2
最新资源
- 磁性吸附笔筒设计创新,行业文档精选
- Java Swing实现的俄罗斯方块游戏代码分享
- 骨折生长的二维与三维模型比较分析
- 水彩花卉与羽毛无缝背景矢量素材
- 设计一种高效的袋料分离装置
- 探索4.20图包.zip的奥秘
- RabbitMQ 3.7.x延时消息交换插件安装与操作指南
- 解决NLTK下载停用词失败的问题
- 多系统平台的并行处理技术研究
- Jekyll项目实战:网页设计作业的入门练习
- discord.js v13按钮分页包实现教程与应用
- SpringBoot与Uniapp结合开发短视频APP实战教程
- Tensorflow学习笔记深度解析:人工智能实践指南
- 无服务器部署管理器:防止错误部署AWS帐户
- 医疗图标矢量素材合集:扁平风格16图标(PNG/EPS/PSD)
- 人工智能基础课程汇报PPT模板下载