当前位置: 代码迷 >> Oracle技术 >> Oracle 所有表 字段名务须唯一 是否必要
  详细解决方案

Oracle 所有表 字段名务须唯一 是否必要

热度:93   发布时间:2016-04-24 08:07:52.0
Oracle 所有表 字段名必须唯一 是否必要?
各位大侠,

         本人在当前项目(Oracle 11g)遭遇如下问题,貌似第一次提问发帖,望请指点:
         客户某些人员想要强推自己的数据库规范,其中一条是字段名 = "表名缩写前缀"_+"字段名",目的是要求当前schema下所有表的字段名必须唯一。
        比如:货主表【STORER】缩写假设为SR,客户表【CLIENT】缩写假设为CT,公司表【COMPANY】缩写假设为CY。
        当前【STORER】,【CLIENT】都有叫公司代码的字段,【COMPANY】的公司代码字段名叫"CY_CODE"。则【STORER】表中的公司代码应该叫"SR_CY_CODE",【CLIENT】表叫“CT_CY_CODE”。
        客户解释字段名唯一为提高查询效率,什么一看就知道是哪个表的公司代码字段等等。
        如果这样改的话,当前的开发人员很不适应,改动也太大了,而且看到字段完全不知道什么意思。这样是否有必要?他们内部对此也有争议,说什么Oracle 11g不需要考虑这么多, 各有立场。应该怎样去引导客户对于这块的需求?自己当然是更倾向于这三张表的客户代码都要COMPANY_CODE,因为我觉得我连表名缩写“CY"都不能适应,但又找不到什么十足的理由。虽然我心里有些觉得有些恼火,但也不想给人盲目下定义,所以在此请大家帮忙给点建议该如何去沟通,谢谢!
       
------解决方案--------------------
帮顶,不要沉。个人觉得字段没必要这样,一般表名这样设计。
等答案。
------解决方案--------------------
我们这要求相同数据元素字段名一致是出于系统全局的角度

字段名一致就可以查看数据元素在整个系统数据结构中的分布,
比如说 部门编号都在那些数据表中存在,如果某一个表发生变化,会涉及到那些数据表等等
如果字段名一致查起来相当的容易
像你们这种字段名唯一的估计只能一个表一个表的去查找了吧
  相关解决方案