posts - 11, comments - 10, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

数据库命名规范(适用SQL Server)

Posted on 2006-09-29 10:16 繁星满空 阅读(5507) 评论(2)  编辑  收藏 所属分类: 其它技术

设计原则

 

符号三大范式(每一列表达一个意思,每一行代表一个实例/每一行有唯一键/表内没有其它表的非主键信息)

 

每个表应该有的3个有用字段(记录创建或更新时间/记录创建者/记录版本)

 

避免保留字

 

表应避免可为空的列



 

命名规范

 

表名如Order/UserAccout

符合以下规范:

1.     统一采用单数形式,反对Orders

2.     首字母大写,多个单词的话,单词首字母大写,反对order/Useraccout/ORDER

3.     避免中文拼音,反对AgentBaoCi

4.     避免下划线连接,反对User_Accout(下划线适用Oracle数据库)

5.     避免名称过长,反对WebsiteInfomationModifyRecord

6.     多对多关系表,以Mapping结尾,如UserRoleMapping

7.     避免保留字

 

字段

字段名如userID/userName/userType

符合以下规范:

1.     首个字母小写,多个单词的话,单词首字母大写,反对UserID/Userid

2.     必须有一主键,主键不直接用ID,而是表名+ID,如userID/orderID

3.     常用的字段name,不直接用name,而是表名+Name,如userName/orderName

4.     常用的字段desc,不直接用desc,而是表名+Desc,如userDesc/orderDesc

5.     大写字母前必须包含至少两个小写的字母,反对uID/oID

6.     避免中文拼音

7.     避免下划线连接

8.     避免名称过长

9.     避免保留字  

 

对象

1.     存储过程以SP_为前缀

2.     触发器以TR_为前缀

3.     函数以FN_为前缀

4.     主键以PK_为前缀

5.     索引以IX_为前缀

6.     前缀后的首字母大写,多个单词的话,单词首字母大写,如SP_CountFee

7.     所有的关键字的所有字母必须大写,如SELECT userID,username FROM User



SQL Server保留字请参考联机文档


评论

# re: 数据库命名规范(适用SQL Server)  回复  更多评论   

2010-07-26 09:55 by ldp615@163.com
凭什么“统一采用单数形式,反对Orders”,去看看Northwind数据库吧

# re: 数据库命名规范(适用SQL Server)  回复  更多评论   

2010-08-23 12:17 by 呀呀
凭什么字段首个字母小写,你去看看使用微软MemberShip自动生成的那11张表的字段,全部是大写字母开关的

只有注册用户登录后才能发表评论。


网站导航: