- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL_Server数据库编程规范讨论稿.
SQL Server数据库编程规范
《讨论稿》
1总则
1.1目的
为了规范单位平台开发过程中SQL语句的编写工作,提高SQL
语句共享,避免语义或语句相同的SQL语句重复解析,优化SQL查询,培养开发人员良好的代码风格,参照工作中的体会和常用代码规范,编写此规范。
1.2基本原则
以大小写敏感编写SQL语句。
尽量使用Unicode 数据类型。
优先使用连接代替子查询或嵌套查询。
尽量使用参数化SQL查询代替语句拼接SQL查询。
禁止使用[拼音]+[英语]的方式来命名SQL对象或变量。
尽量使用存储过程代替SQL语句。
1.基本规范
采用Pascal样式或Camel样式命名数据库对象。
大写T-SQL语言的所有关键字,谓词和系统函数。
?
2?命名规范
在一般情况下,采用Pascal样式或Camel样式命名数据库对象,使在开发基于数据库应用程序的时候通过ORM工具生成的数据访问代码不需要调整就符合程序开发语言(比如C#)命名规范。
另外,关系型数据库同Xml结合得越来越紧密,规范的命名越来越重要。
.1对象命名
采用Pascal样式命名,命名格式为[项目英文名称]。
示例:ReportServerAdventureWorks
2.1.2数据库文件
数据文件:[数据库名称] +.mdf
日志文件:[数据库名称] +_Log.ldf
示例:.mdf、 AdventureWorks.mdf
??? ReportServer_Log.ldf、 AdventureWorks_Log.ldf
2.1.3关系型数据仓库
采用Pascal样式命名,命名格式为[项目英文名称] + DW。
示例: DW、AdventureWorksDW
?
2.1.4数据架构
除SQL Server 系统定义的数据架构外,新建架构采用Pascal样式命名,命名格式为[架构名]。
示例:HumanResourcesProduction、Person、Sales
对数据库对象 Table,View,Procedure,Function等使用数据架构进行归类。在SQL Server 2000中dbo为默认架构。
.1.5数据表
采用Pascal样式命名,命名格式为[表名]。
示例:Product、ProductModel
表名以英文单数命名,主要是参考SQL Server 200示例数据库AdventureWorks
示例:使用Product而不是Products
.1.6数据视图
视图名称采用Pascal样式命名,命名格式为v + [视图名称]。
示例:vvSalesPerson
2.1.7数据列
列名称命名采用英文单词或缩写,英文单词只来自于具体业务定义,尽量表达清楚含义。采用Pascal样式命名,命名格式为[列名称]。
示例:AddressIDPostalCode
?
2.1.8存储过程
建议采用Pascal样式命名,命名格式为[存储过程名称]。
示例:GetUser、up_AddUser?
备注:在SQL Server 200示例数据库中使用Camel样式命名。
.1.9函数
自定义函数采用Pascal样式命名,命名格式为[函数名],系统函数使用全部大写。
示例:
示例:SELECT ISNULL(@LastName,’Unknown last name’);
GETDATE()
.1.10用户定义数据类型
采用Pascal样式命名,命名格式为[自定义数据类型名称]。
示例:Flag?NameStyle
.1.11DML触发器
DML触发器是当数据库服务器中发生数据操作语言 (DML) 事件时要执行的操作。DML 事件包括对表或视图发出的 UPDATE、INSERT 或 DELETE 语句。根据事件不同命名规则使用前缀进行区分,格式为 [u|i|d] + [表名|视图名]
示例:uiProduct、dProduct
?
另外一种方式为,
AFTER 触发器:TR_表名_[后面插入加I,修改加U,删除加D]。
INSTEAD OF 触发器:TR_表名或视图名_OF[后面插入加I,修改加U,删除加D]
.1.12DDL触发器
响应各种数据定义语言 (DDL) 事件而激发。这些事件主要与以关键字 CREATE、ALTER 和 DROP 开头的 Transact-SQL 语句对应。执行 DDL 式操作的系统存储过程也可以激发 DDL 触发器。
采用Camel样式命名,命名单词能够描述DDL触发器功能。
示例:
CREATE TRIGGER safety ON DATABASE
FOR DROP_TABLE, ALTER_TABLE
AS
PRINT ’’
ROLLBACK ;?
另外一种方式为添加ddl前缀,
示例:
CREATE TR
您可能关注的文档
- SQLServer不存在或访问被拒绝..doc
- SQLServerODBC数据源连接失败问题总结..doc
- SQLSERVERCDC增量数据抽取..doc
- SQLSERVER函数大全..docx
- SQLSERVER分区函数..doc
- SQLServer创建一个表..doc
- SQLServer“数据库维护计划”..doc
- sqlserver备份命令..doc
- SQLServer存储过程..doc
- sqlserver学习..doc
- 2025年贵州工业职业技术学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 2025年西昌民族幼儿师范高等专科学校高职单招职业适应性测试近5年常考版参考题库含答案解析.docx
- 2025年西藏警官高等专科学校高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年贵州工商职业学院高职单招职业技能测试近5年常考版参考题库含答案解析.docx
- 2025年贵州工商职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析.docx
- 2025年贵州农业职业学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 2025年贵州工商职业学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 2025年贵州工商职业学院高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年许昌职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 2025年许昌职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析.docx
文档评论(0)