oracle数据库设计规范建议.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle 数据库设计规范建议 1 目的 本规范的主要目的是希望规范数据库设计,尽量提前避免由于数据库设计不当 而产生的麻烦;同时好的规范,在执行的时候可以培养出好的习惯,好的习惯是软 件质量的很好的保证。 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据 库及其应用系统,有效存储数据,满足用户信息要求和处理要求。 2 适用范围 本规范的适用人员范围包括我司的所有应用开发人员以及在我司承接数据库 应用开发的软件人员。 本规范的适用 IT 范围包括数据库对象的命名规范、设计原则、SQL 语句的设 计和使用、SQL 语句的性能优化建议、其他与性能有关的设计原则以及设计工具的 选择。 3 数据对象的命名规范 3.1 通用规范 3.1.1 使用英文:要用简单明了的英文单词,不要用拼音,特别是拼音缩写。主要 目的很明确,让人容易明白这个对象是做什么用的; 3.1.2 一律大写,特别是表名:有些数据库,表的命名乃至其他数据对象的命名是 大小写敏感的,为了避免不必要的麻烦,并且尊重通常的习惯,最好一律用大写; 3.2 数据库对象命名规范 3.2.1 表的命名 3.2.1.1 表名的前缀:T_表名。为表的名称增加一个或者多个前缀,前缀名不要太 长,可以用缩写,最好用下划线与后面的单词分开;其目的有这样几个: 3.2.2 视图命名:V_相关表名(或者根据需要另取名字); 3.2.4 存储过程命名: PRO_存储过程名(用英文表达存储过程意义); 3.2.5 函数命名:FUN_函数名称(用英文表达函数作用); 3.2.6 触发器命名: TRI_触发器名称(用英文表达触发器作用); 3.2.7 索引命名:IDX_表名_字段名 (如果存在多字段索引,取每字段前三个字符 加下划线组合,如在 custom, cutting, curtail 上建立联合索引,命名为 表名 _cus_cut_cur_IDX,如果前三个截取字符相同,就从字段名称中不同的字符开始取三 个字符加下划线组合,如在 custid, custom,custname上建立联合索引,就命名为 表_tid_tom_tna_IDX; 3.2.8 唯一索引命名:UNI_表名_字段名 (如果存在多字段唯一索引,取每字段前 三个字符加下划线组合,如在 custom, cutting, curtail上建立唯一索引,命名为 表名_ cus_cut_cur_UNI,如果前三个截取字符相同,就从字段名称中不同的字符开 始取三个字符加下划线组合,如:在 custid, custom,custname上建立唯一索引, 命名:表_tid_tom_tna_UNI; 3.2.9 主键命名:PK_表名_字段名 (如果存在多字段主键,取每字段前三个字符加 下划线组合,如在 custom, cutting, curtail上建立主键,命名为 表名 _cus_cut_cur_PK,如果前三个截取字符相同,就从字段名称中不同的字符开始取三 个字符加下划线组合,如在 custid, custom,custname上建立主键,命名:表 _tid_tom_tna_PK; 3.2.10 外键命名:FK_表名_主表名_字段名; 4 数据库对象设计原则 4.1 表的设计 4.1.1 主、外键 4.1.1.1 每个表,都必须要有主键。主键是每行数据的唯一标识,保证主键不可随 意更新修改,在不知道是否需要主键的时候,请加上主键,它会为你的程序以及将 来查找数据中的错误等等,提供一定的帮助; 4.1.1.2 一个表的某列与另一表有关联关系的时候,如果加得上的话,请加上外键 约束。外键是很重要的,所以要特别强调: 4.1.1.2.1 适量建外键。为了保证外键的一致性,数据库会增加一些开销,如果有 确凿的并且是对性能影响到无法满足用户需求的证据,可以考虑不建外键。否则, 还是应该建外键; 4.1.1.2.2 不要以数据操作不方便为理由而不建外键。是的,加上外键以后,一些 数据操作变得有些麻烦,但是这正是对数据一致性的保护。正是因为这种保护很有 效,所以最好不要拒绝它; 4.1.1.2.3 以缺省的方式建立外键(即用delete restrict方式),以达到保护数据 一致性的目的;外键在保护数据一致方面非常有效。如果不建外键,数据库中容易 出现垃圾数据,并且无人知晓。当数据量很大的时候,查找这些垃圾数据也是相当 困难的。而应用程序在设计时,往往没有考虑或者也无法照顾到垃圾数据。因此垃 圾数据很可能造成应用程序工作不正常,并且表现出来的现象会很奇怪,让人摸不 着头脑。

文档评论(0)

liuyanhua95 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档