- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Transact-SQL编程规范
文档名称: Transact-SQL编程规范 电子文档: 版本号: 1.00 密级: 公开 文档编号: 编写人: 江剑平 日期: 2013-9-11 校对人: 日期: 审核人: 日期: 批准人: 日期: 更 改 记 录 更改
序号 更改原因 更改
页码 更改前版本号 更改后版本号 更改人 生效日期 备 注
1 概述
1.1 规范制定原则
方便代码的交流和维护。
不影响编码的效率,不与大众习惯冲突。
使代码更美观、阅读更方便。
使代码的逻辑更清晰、更易于理解。
1.2 相关原则
1.2.1 大小写
大写所有的 T-SQL 关键字,包括 T-SQL 函数。变量名称及游标名称使用大驼峰样式。数据类型定义使用全部小写。
示例:DECLARE @LastName nvarchar(32);
1.2.2 使用“;”
使用“;”作为 Transact-SQL 语句终止符。虽然分号不是必需的,但使用它是一种好的习惯。
1.2.3 存储格式
尽量采用Unicode数据存储格式,提高可移植性和兼容性,实际应用中使用nchar、nvarchar、ntext代替char、varchar、text。
1.2.4 默认值
在建立数据表时,尽量使用默认值代替NULL值。比如设置CreatedDate列默认值为GETDATE()。在可避免的情况下设置字段为不允许空。
1.2.5 使用“”
在 T-SQL 代码中为字符常量使用单引号,避免使用双引号。
1.2.6 数值比较
不要将空的变量值直接与比较运算符(符号)比较。如果变量可能为空,应使用 IS NULL 或 IS NOT NULL 进行比较,或者使用 ISNULL 函数。
1.2.7 表名别名
表名别名要简短,但意义要尽量明确。通常使用大写的表名作为别名,使用 AS 关键字指定表或字段的别名。
1.2.8 禁止使用“*”
禁止在任何代码中使用 “SELECT *”。
1.2.9 排序
决不要依赖 SELECT 语句会按任何特定顺序返回行,除非在 ORDER BY 子句中指定了顺序。通常,应将 ORDER BY 子句与 SELECT 语句一起使用。可预知的顺序(即使不是最方便的)比不可预知的顺序强,尤其是在开发或调试过程中。在返回行的顺序无关紧要的情况下,可以忽略 ORDER BY 的开销。
1.2.10 BEGIN...END 块的
在SQL代码快中尽量使用BEGIN...END 语句块,提高代码可阅读性。
1.2.11 TRY块
在SQL Server 2005中增加TRY块,Transact-SQL 语句组可以包含在 TRY 块中。如果 TRY 块内部发生错误,则会将控制传递给 CATCH 块中包含的另一个语句组。
示例:
BEGIN TRY
SQL 语句组1
END TRY
BEGIN CATCH
SQL 语句组2
END CATCH;
1.2.12 TOP子句
在SQL Server 2005中加强了TOP的使用,尽量使用TOP(变量)来减少SQL拼串的使用。
1.3 相关注释
1.3.1 小驼峰法
小驼峰法的意思是:除第一个单词之外,其他单词的首字母大写。譬如要获取学生总人数可以如下命名规则:getStudentCount,第一个单词是全部小写,后面的单词首字母大写。
1.3.2大驼峰法
相比小驼峰法,大驼峰法把第一个单词的首字母也大写了。譬如同样是获取学生总人数可以采取如下命名规则: GetStudentCount。
2 命名规范
2.1 对象命名
2.1.1 数据库
采用大驼峰命名,命名格式为【项目英文名称】+【版本号】。
示例:JOBBMSV1.0.1.7
2.1.2 数据表
采用大驼峰命名,命名格式为【表名】。
示例:Product
表名以英文单数命名,个人建议不采用复数是为了更好的使用ORM工具生成符合编程规范的代码(比如C#)。
示例:使用Product
而不是Products
2.1.3 数据列
列名称命名采用英文单词或缩写,英文单词只来自于具体业务定义,尽量表达清楚含义。采用大驼峰命名,命名格式为【列名称】。
示例:AddressID
PostalCode
尽量避免使用拼音命名,如果不可避免,对于比较短的列名,采用拼音全写,如果拼音列名比较复杂,可以采用首个字用全拼,其它字用首字母大写表示。
示例:宁波 Ningbo
经营方式 JingYFS
2.1.4 数据视图
建议采用大驼峰命名,命名格式为V +【视图名称】。
示例:VEmployee
文档评论(0)