前言
SQL语句的编写对于我们后端开发者而言是一个必备的技巧,在日常工作中,SQL语言编写的质量不仅仅会影响到团队的合作效率与项目的可维护性,还直接关系到数据库的性能优化与数据安全。今天大姚给大家分享一个不错的 SQL 编码风格的指南,希望可以帮助到有需要的同学。
项目介绍
sqlstyle.guide是一个关于SQL编码风格的指南,旨在通过提供一套明确的规则和标准,帮助开发者编写更加清晰、一致和易于维护的SQL代码。该指南提供了多语言版本描述,其中包括:简体中文、英文、法语、德语、韩语等多种语言。
SQL和数据库相关
关系型数据库(SQL)库指的是使用关系模型(二维表格模型)来组织数据的数据库,是一种使用结构化查询语言(Structured Query Language,简称SQL)进行数据管理和操作的数据库类型。它采用表格的形式来组织和存储数据,通过定义表之间的关系来建立数据之间的联系。
应该做的事情
- 使用一致的、描述性的名称。
- 合理地使用空格和缩进来增强可读性。
- 存储符合 ISO-8601 标准的日期格式(YYYY-MM-DDTHH:MM:SS.SSSSS)。
- 为了提高可移植性,最好仅使用标准 SQL 函数而不是特定供应商的函数。
- 保证代码简洁明了、没有多余的 SQL —— 比如非必要的引号或括号,或者可以推导出的 WHERE 子句。
- 必要时在 SQL 代码中加入注释。优先使用 C 语言式的以 /* 开始以 */ 结束的块注释,或使用以 -- 开始的行注释,并在末尾换行。
应避免的事情
- 驼峰命名法 —— 它不适合快速扫读。
- 描述性的前缀或匈牙利命名法比如 sp_ 或 tbl。
- 复数形式 —— 尽量使用更自然的集合术语。比如,用“staff”替代“employees”,或用“people”替代“individuals”。
- 被引号包裹的标识符(quoted identifier)—— 如果你必须使用这样的标识符,最好坚持用 SQL92 的双引号来提高可移植性(你可能需要配置你的 SQL 服务器以支持此特性,具体取决于供应商)。
- 面向对象编程的原则不该应用到 SQL 或数据库结构上。
更多技巧阅读
- SQL样式指南中文讲解:https://www.sqlstyle.guide/zh
- GitHub开源地址:https://github.com/treffynnon/sqlstyle.guide