[数据库基础]——编码标准之命名

阅读导航

表 Tables、视图 Views

存储过程 Stored Procedures

触发器 Triggers

索引 Indexes

主键 Primary Keys

外键 Foreign Keys

Defaults

列 Columns

脚本命名

 

一个语句写十遍,居然大部分时候都是不一样的。上网找了一些SQL的开发标准文档,结合项目中的使用,写一些关于自己SQL的开发标准文档。

解编码标准就是一套写代码的指南、规则、约定的集合。编码标准应该足够灵活并且不会给开发造成负担。作为一个开发者来说,新接触一个项目,个人认为最重要的是熟悉当前项目的开发标准。这样不仅有利于快速熟悉已有代码和添加新代码,而且对以后的维护也很重要。

 

表 Tables、视图 Views

规则:使用Pascal命名法,并以‘s’ 或者‘es’ 结尾的复数形式。

例子:

表:Products,Customers

视图:CurrentProductsLists

如果涉及到一组相关的表,那么就是用’_’

例子:

Products_Asia,Products_Europe

在表和视图命名,还是有一些差异的,比如:以 ‘TB_’、 ‘tbl_’ 作为表名的前缀,以‘VW_’ 作为视图名的前缀。

 

存储过程 Stored Procedures

规则:sp<应用名>_[<组名>_]<行为><表名/逻辑实例>,多个单词时仍然使用Pascal命名法

例子:

spOrders_GetNewOrders,spProducts_UpdateProduct

也有以 ‘prc_’作为存储过程前缀

 

触发器 Triggers

规则:TR_<表名>_<行为>

例子:

TR_Orders_UpdateProducts

注:不鼓励使用触发器

 

索引 Indexes

规则:IX_<表名>_<使用’_’分隔多列>

例子:

IX_Products_ProductID 

 

主键 Primary Keys

规则: PK_<表名>

例子:

PK_Products,PK_Orders

 

外键 Foreign Keys

规则:FK_<表名1>_<表名2>
例子:

FK_Products_Orderss

 

Defaults

规则:DF_<表名>_<列名>

例子

DF_Products_Quantity

 

列 Columns

规则:使用Pascal命名法,涉及到其他表的列的话,就使用<表名>列名

例子:

Customers表:ID,Name

Orders表:ID,CustomerID

脚本命名

规则:

存储过程的脚本名称以 ’sp_‘ 作为前缀

Schema的脚本名称以 ’def_‘ 作为前缀

Conversion脚本名称以 ’conv_‘ 作为前缀(对这个概念还不是很清楚)

Rollback的脚本名称以 ’rbk_‘ 作为前缀

例子:

sp_GetNewOrders.sql,def_Orders.sql,conv_Orders.sql,rbk_Orders.sql

 

一般规则

命名中不要用空格,避免使用SQL的关键字,如果使用关键字,讲关键字放在’[]‘中(如:[Year]),建议做好所有的列名都是用’[]‘

 

 关于命名规则,如果有补充请留言

没有任何规约对数据库开发的命名是绝对的,只要适合项目,适合开发者,并被大部分开发者所接受,就是好的标准,

posted @ 2013-07-01 23:57  CodingStar  阅读(1824)  评论(12编辑  收藏  举报