数据库设计规范.doc
上传人:sy****28 上传时间:2024-09-15 格式:DOC 页数:3 大小:30KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

数据库设计规范.doc

数据库设计规范.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数据库设计规范1.目的为规范数据库设计,特制订本规范。设计成功的数据库系统应具备以下特点:a功能强大b能准确地表示业务数据c容易使用和维护d对最终用户操作的响应时间合理e便于数据结构的改进f便于数据的检索和修改g由于设计缺陷所造成的停机时间最少h很少的数据库维护工作i有效的安全机制j冗余数据少或没有k便于数据库的备份和恢复2.数据库结构原则规定数据库设计所遵循的范式和一些其他适用原则,在遵循数据库设计范式的基础上合理地划分表,添加状态和控制字段等。3.数据库模式设计要求为了减少数据冗余,保持数据库数据的完整性(由于数据库模式设计的不合理引起的插入异常,删除异常,更新异常),需要对数据库的模式设计进行规范化。关系数据库中的关系是需要满足一定的要求的,满足不同要求的为不同的范式,目前针对关系数据库设计的不同要求分为如下5类范式:第一范式(1NF),第二范式(2NF),第三范式(3NF),BCNF(鲍依斯-科得范式),第四范式。基于目前大多数企业应用的要求,一般的关系数据库的模式设计达到第三范式就可以了,在结合总局数据库的设计要求的基础上,对于数据库的模式设计应该达到第三范式(3NF)的要求,但是在某些条件下,考虑效率和实用性等方面的要,可以适当调整。4.基础数据表4.1设有“录入人”和“录入日期”列,由系统自动记录。4.2设置自增主键,不允许用户修改。并可根据主键记录行的录入顺序4.3对于用于查询过滤条件的列,不可为空,以免行“丢失”4.4对于数值列,不可为空,“0”作为默认值4.5对于必要的“冗余”列,如客户名称,应有相应的程序保持各“冗余”列的同一性,以免出现异议。4.6记录单据的表中(如订单表)设置“过程状态”列和“记录状态”列。过程状态列用于记录如创建、审核、记账状态;记录状态用于记录如有效、删除等状态5.数据库命名原则5.1基本原则(1)表名、字段名按一定意义命名且长度不宜过长(2)数据对象、变量的命名都采用英文字符,禁止使用中文命名。(3)在对象名的字符之间不要留空格。(4)保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性。5.2详细原则5.2.1表名1、表(表标识部分)以名词或名词短语命名,确定表名是采用复数还是单数形式。此外给表的别名定义简单规则(比方说,如果表名是一个单词,别名就取单词的前4个字母;如果表名是两个单词,就各取两个单词的前两个字母组成4个字母长的别名;如果表的名字由3个单词组成,从头两个单词中各取一个然后从最后一个单词中再取出两个字母,结果还是组成4字母长的别名,其余依次类推)。2、对于名称由一个单词构成的表或者字段,建议不使用缩写,而是用完整的单词命名。5.2.2列名采用有意义的列名5.2.3视图V_<视图类型>_[<数据库标识>]_<视图标识>1、视图命名规则和表的命名类似。2、命名应尽量体现各视图的功能5.2.4存储过程P_[<数据库标识>]_<存储过程标识>备注:存储过程应以'P_'开头,注意和系统的存储过程区分5.2.5函数F_[<数据库标识>]_<函数标识>5.2.6触发器TR_<表名>_<I,U,D的任意组合>(after)TI_<表名>_<I,U,D的任意组合>(instead)备注:After触发器以TR作为前缀,Instead触发器以TI作为前缀。触发器名为相应的表名加上后缀,Insert触发器加'_I',Delete触发器加'_D',Update触发器加'_U',如:TR_Customer_I,TR_Customer_D,TR_Customer_U。5.2.7主键Pk_<表名>_<主键标识>5.2.8外键Fk_<表名>_<主表名>_<外键标识>5.3命名中其他注意事项(1)以上命名都不得超过30个字符的系统限制。变量名的长度限制为29(不包括标识字符@)。(2数据对象、变量的命名都采用英文字符,禁止使用中文命名。绝对不要在对象名的字符之间留空格。(3)小心保留词,要保证你的字段名没有和保留词、数据库系统或者常用访问方法冲突(4)保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性。