MySQL建表规约与编程规约详解

需积分: 10 55 下载量 75 浏览量 更新于2024-08-08 收藏 962KB PDF 举报
"MySQL规约-高等光学仿真_matlab" 这篇文档主要讲述了MySQL的数据库设计规约,涵盖了建表规约、索引规约、SQL规约、ORM规约等多个方面,旨在提高数据库设计的规范性和一致性,提升数据存储和查询的效率。以下是详细的知识点解析: 1. **建表规约** - **字段命名**:强制要求表达是/否的字段以`is_`开头,数据类型为unsigned tinyint,表示1是,0否。所有字段名应使用小写字母或数字,禁止数字开头,禁止双下划线中间仅出现数字。 - **表名**:表名不应使用复数名词,且不应使用保留字。表名建议体现业务内容,避免使用复数形式,与DO类名保持一致。 - **索引命名**:唯一索引名前缀`uk_`,普通索引名前缀`idx_`。 - **数据类型选择**:小数类型使用decimal,避免使用float和double以防止精度问题。字符串类型若长度几乎相等,使用char类型。varchar类型长度不超过5000,超过时单独建表。 - **必备字段**:每个表应包含id(unsigned bigint,主键,自增,步长1)、gmt_create(datetime类型)、gmt_modified(datetime类型)。 - **表命名建议**:表名最好是业务名称+表的作用,如`tiger_task`。 - **库名与应用名**:推荐库名与应用名称一致。 - **字段注释**:字段含义或状态有变化时,应及时更新注释。 2. **索引规约** - 虽未详细列出,但一般包括合理创建索引,避免全表扫描,以及针对高并发查询场景的优化。 3. **SQL规约** - SQL编写应遵循标准SQL语法,避免SQL注入,优化查询效率,如使用JOIN代替子查询等。 4. **ORM规约** - 对象关系映射的规范,可能包括字段映射、事务管理、对象持久化等方面,确保ORM操作与数据库规约相匹配。 此外,文档中还提到了其他编程规约,如命名规约、常量定义、格式规约、OOP规约、集合处理、并发处理、控制语句、注释规约等,这些规约涵盖了程序设计的多个层面,旨在提升代码质量、可读性和可维护性。例如,命名规约强调使用清晰的英文拼写,避免拼音和中文混用,类名使用UpperCamelCase风格,方法名和变量名使用lowerCamelCase风格,常量全大写并用下划线分隔。同时,异常处理和日志规约也非常重要,它们关系到错误捕获和系统监控。工程规约涉及应用分层、二方库管理和服务器配置,保障系统的架构合理和稳定运行。安全规约则关注代码的安全性,防止潜在的安全风险。 这份规约文档是MySQL数据库设计和编程的一份详尽指南,对开发人员编写高质量、高效率的代码具有指导意义。