TransactSQL 数据库编程命名规范.docVIP

  • 7
  • 0
  • 约8.37千字
  • 约 10页
  • 2016-11-22 发布于贵州
  • 举报
TransactSQL 数据库编程命名规范

Transact-SQL 数据库编程命名规范 1. 概述 1.1. 基本原则 以大小写敏感编写SQL语句。 尽量使用Unicode 数据类型。 优先使用连接代替子查询或嵌套查询。 尽量使用参数化SQL查询代替语句拼接SQL查询。 禁止使用[拼音]+[英语]的方式来命名SQL对象或变量。 尽量使用存储过程代替SQL语句。 1.2. 基本规范 建议采用Pascal样式或Camel样式命名数据库对象。 大写T-SQL语言的所有关键字,谓词和系统函数。 2. 命名规范 在一般情况下,采用Pascal样式或Camel样式命名数据库对象,使在开发基于数据库应用程序的时候通过ORM工具生成的数据访问代码不需要调整就符合程序开发语言(比如C#)命名规范。另外,关系型数据库同Xml结合得越来越紧密,规范的命名越来越重要。 在实际数据库开发过程中,如果需求方已经提供数据库设计方案,建议以提供的方案为准;在原有数据库上进行升级开发时,在可行的情况下可适当做出设计调整以符合编程规范。 1.3. 对象命名 1.3.1. 数据库 第一种方式,采用Pascal样式命名,命名格式为[项目英文名称]。 示例:AdventureWorks 第二种方式,采用Pascal样式命名,命名格式为[项目英文名称] + Db。 示例:AdventureWorksDb BizTalkRuleEngineDb 建议采用第一种方式。 1.3.2. 数据库文件 数据文件:[数据库名称] + _Data.mdf 日志文件:[数据库名称] + _Log.ldf 示例:AdventureWorks_Data.mdf AdventureWorks_Log.ldf 1.3.3. 关系型数据仓库 采用Pascal样式命名,命名格式为[项目英文名称] + DW。 示例:AdventureWorksDW 1.3.4. 数据架构 除SQL Server 系统定义的数据架构外,新建架构采用Pascal样式命名,命名格式为[架构名]。 示例:HumanResources Production 对数据库对象 Table,View,Procedure,Function等使用数据架构进行归类。在SQL Server 2000中dbo为默认架构。 1.3.5. 数据表 采用Pascal样式命名,命名格式为[表名]。 示例:Employee Product 表名以英文单数命名,主要是参考SQL Server 2005示例数据库,个人理解不采用复数是为了更好的使用ORM工具生成符合编程规范的代码(比如C#)。 示例:使用Product 而不是Products 1.3.6. 数据视图 视图名称采用Pascal样式命名,命名格式为v + [视图名称]。 示例:vEmployee vSalesPerson 1.3.7. 数据列 列名称命名采用英文单词或缩写,英文单词只来自于具体业务定义,尽量表达清楚含义。采用Pascal样式命名,命名格式为[列名称]。 示例:AddressID PostalCode 尽量避免使用拼音命名,如果不可避免,对于比较短的列名,采用拼音全写,如果拼音列名比较复杂,可以采用首个字用全拼,其它字用首字母大写表示。 示例:宁波 Ningbo 经营方式 JingYFS 1.3.8. 存储过程 建议采用Pascal样式命名,命名格式为[存储过程名称]。 示例:GetUser AddUser 备注:在SQL Server 2005示例数据库中使用Camel样式命名。 1.3.9. 函数 自定义函数采用Pascal样式命名,命名格式为[函数名],系统函数使用全部大写。 示例:SELECT ISNULL(@LastName,Unknown last name); GETDATE() 1.3.10. 用户定义数据类型 采用Pascal样式命名,命名格式为[自定义数据类型名称]。 示例:Flag NameStyle 1.3.11. DML触发器 DML触发器是当数据库服务器中发生数据操作语言 (DML) 事件时要执行的操作。DML 事件包括对表或视图发出的 UPDATE、INSERT 或 DELETE 语句。根据事件不同命名规则使用前缀进行区分,格式为 [u|i|d] + [表名|视图名] 示例:uEmployee iEmployee dEmployee 另外一种方式为, AFTER 触发器:TR_表名_[后面插入加I,修改加U,删除加D]。 INSTEAD OF 触发器:TR_表名或视图名_OF

文档评论(0)

1亿VIP精品文档

相关文档