初次使用Oracle 又遇到难题了
项目中需要一个存储用户信息的表
包括:
  用户的基本信息(比如真实姓名,联系方式等等)
  系统信息(包括密码、权限。。等等)
两种信息加起来太多了 光基本信息就有大约40项 系统信息也有40多项的样子
平时基本信息基本上都用不到
还有的就是 系统信息中有几列(10列的样子)是极少用到的 而且类型还多是CLOB的
我的想法是想把这基本信息和系统信息两种信息分开
再把系统信息中常用的部分和极少使用的部分分开
做成三个表储藏  
不知道这样设计是否和理
是不是还有更好的设计方法呢 
希望大家给点意见 3Q!

解决方案 »

  1.   

    强烈建议将数据按照一定的规律区分,把经常需要做update的数据和单纯只是做查询的数据分开存储,要不然对数据库性能影响很大,用户的基本信息和登陆信息通常都是分开存储
      

  2.   

    如果是查询用得多,视图不错
    如果读写多,分开存放。我不清楚怎么你的基本信息库里有那么多的blob字段
      

  3.   

    同意 armyyd(不会游泳的猫) 。
    如果这些资料需要经常更新,还是分开为好。如基本不变,主要是查询,那就建立几个视图。
      

  4.   

    TO:armyyd(不会游泳的猫) 有些字段是动态增长的
    我也不能预计它到底有多长 
    所以就设置成了CLOB (正在考虑不用它)
    不知道CLOB与VARCHAR2比较 性能差多少?
      

  5.   

    clob字段是以二进制进行存放的,查询什么的都不方便
    varchar2就有8000个byte,要是还不够用,那就不能算基本信息了。
    建立子表
      

  6.   

    如果不做特殊用途,还是少用clob
    赞成armyyd(不会游泳的猫)
    另外查询多的自然要建立视图,毫无疑问
    更新频繁的话,应该考虑将不常更新的分开存储