网站大量收购独家精品文档,联系QQ:2885784924

数据库命名规范.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基本命名规则 基于所有项目中都分子模块,在建表的时候,表前缀都添加子模块首字母_,字母对多3个,后面为具体表明代表的意义,尽量采用英文。如:系统管理中用户,命名为S_User(S代表System) 表1. 基本数据库对象命名 数据库对象 前缀 举例 表(Table) 子模块缩写_ S_Dept(系统管理模块中部门) 字段(Column) 无 Title 视图(View) v_ v_UserInfo 存储过程(Stored procedure) pr或proc prUserDeptOrder(系统存储过程为sp_,这里区分开) 触发器(Trigger) tr trUserOrder_D(D代表删除时的触发器) 索引(Index) ix_ ix_UserID(UserID为User表中字段) 主键(Primary key) pk_ pk_User(创建表时自带) 外键(Foreign key) fk_ fk_User_UserID(创建表时自带) Check约束(Check Constraint) ck_ ck_TableColumn Unique约束 uq_ uq_TableColumn 变量(T-SQL编程中声明的变量)、过程(存储过程或触发器等)、实体(表、字段)应该根据他们所代表的实体意义和进程作用来命名,业务描述过长的名字适当采用缩写,如下面: prCountTotalAmountOfMonthlyPayments (计算每月付费的总金额) prGetParentOrganizationalUnitName (获取上级单位名称) 缩写规则: 如果可以在字典里找到一个词的缩写,就用这个做为缩写,比如:Mon(Monday)、Dec(December) 可以删除单词元音(词首字母除外)和每个单词的重复字母来缩写一个单词。比如:Current = Crnt、Address = Adr、Error = Err、Average = Avg 不要使用有歧异的缩写(一般是语音上的歧义)。比如b4(before)、xqt(execute),4tran(Fortran) 表格、字段的命名: 尽量采用单数表、单数字段名,如:客户表写为Customer,而不是Customers,表字段为CustomerID,而不是CustomersID ; 不要采用重复的单词命名,如:客户信息表为Customer,而不是CustomerInfo,Customer就代表了客户及其信息,再加个info也代表信息的意思。也不就要命名为CustomerList,Customer也代表了客户及其列表,再加个List也只是客户集合而已; 多对多关系的中间表,采用两表的合并,名字太长的采用单词缩写,如:学生表和课程表,应取名为StudentCourse; 字段名不要将表明信息采纳进去,如:用户表User,其中字段不要命名为UserID、UserPassword、UserName,直接命名为ID、Name;代码上User.Password要比User.UserPassword精简得多;但是如果有外键最好采用哪个表的ID,如:用户User表中关联部门编号,用DeptID,这样一目了然; 所有跟时间有关的字段,命名为Date,不要用Time,Time有个次数的歧义。 所有与数目有关的字段,命名为Count,不要用Amount,Count为数据库中俗名,类似select count(*)from table; 所有与链接有关的字段,命名为Url,不要用link或href; 所有与布尔类型有关的字段,命名为Is、Has或Can,如:是否为首页IsIndex; 所有与金钱有关的字段,命名为Cost,不要用Money,Cost比Money意义要为广泛,Cost更多代表了费用,经费; 所有与比率有关的字段,命名为Rate; 建表时需要注意的问题: 设置主键; 尽量添加Check约束; 父子关系表需要明确添加主外键; 建立数据库关系图; 父子关系表中,父表一行数据发生变化(删除),连带子表也变化的(删除),启用级联删除(需要记录好表与表之前的删除顺序,方便以后表结构更改;创建数据库关系图的时候,有个外键关系中可以设置“INSERT和UPDATE规范”);迫不得已创建触发器(最好不要建); 查询时表join有三个表及以上,创建视图; 如果要逐条的写数据库操作的语句来完成一个业务规则,就使用存储过程或事务处理。 一些必要的字段不要设置为NULL,比如结果表要不要设置为NULL,因为在存储过程中经常碰到“字段+5”,如果这个字段设置为NULL,NULL+5是没有结果的,这样给程序带来麻烦,首先要判断这个字段是否为NULL;数字、金钱、浮点型等字段最好设置约束不为NULL也不要为空(Col

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档