- 0
- 0
- 约1.1万字
- 约 10页
- 2019-12-29 发布于天津
- 举报
数据库对象命名参考
张子阳
jimmy_dev@163.com
本文是一个参考,不是一个规范,更不是一个标准。它仅代表了我个人的观点和建议,并
只考虑了通常条件下的规则,你可以根据实际情况随意修改它。
引言
编码规范是一个优秀程序员的必备素质,然而,有很多人非常注重程序中变量、方法、类的
命名,却忽视了同样重要的数据库对象命名。这篇文章结合许多技术文章和资料,以及我自己的
开发经验,对数据库对象的命名规则提出了一点建议,希望能为大家提供一些参考。
NOTE:虽然这篇文章名为“数据库对象命名参考”,实际上,在这篇文章中我不仅介绍了数
据库命名的规则,连带讲述了在数据库设计与开发时所需要注意的几个问题。
基本命名规则
表 1. 基本数据库对象命名
数据库对象 前缀 举例
表(Table) 无 Student
字段(Column) 无 StudentID
视图(View) v vActivity
存储过程(Stored procedure) pr prDelOrder
触发器(Trigger) tr trOrder_D
索引(Index) ix_ ix_CustomerID
主键(Primary key) pk_ pk_Admin
外键(Foreign key) fk_ fk_Order_OrderType
Check约束(Check Constraint) ck_ ck_TableColumn
Unique约束 uq_ uq_TableColumn
用户定义数据类型(User-defined data type) udt udtPhone
用户定义函数(User-defined function) fn fnDueDate
关于命名的约定
变量(T-SQL 编程中声明的变量) 、过程(存储过程或触发器等) 、实体(表、字段)应该根据他们
所代表的实体意义和进程作用来命名:
表 2.好的命名 和 不好的命名 范例
好的命名 不好的命名
@CurrentDate @D
@ActivityCount @ActNum
@EquipmentType @ET
prCalculateTotalPrice @prRunCalc
还有一个常见的错误就是只使用面向计算机的术语,而不是面向公司业务的术语,比如
ProcessRecord 就是一个含糊不清的命名,应该使用一个进程业务描述来替换它,比如
CompleteOrder.
如果完全根据上一条的要求,那么根据业务描述的过程名可能会变得很冗长,比如下面:
prCountTotalAmountOfMonthlyPayments (计算每月付费的总金额)
prGetParentOrganizationalU
原创力文档

文档评论(0)