表的设计问题:关于列的拆分 牢烦大家看看

Demon1221 2004-08-22 02:20:35
初次使用Oracle 又遇到难题了
项目中需要一个存储用户信息的表
包括:
用户的基本信息(比如真实姓名,联系方式等等)
系统信息(包括密码、权限。。等等)
两种信息加起来太多了 光基本信息就有大约40项 系统信息也有40多项的样子
平时基本信息基本上都用不到
还有的就是 系统信息中有几列(10列的样子)是极少用到的 而且类型还多是CLOB的
我的想法是想把这基本信息和系统信息两种信息分开
再把系统信息中常用的部分和极少使用的部分分开
做成三个表储藏
不知道这样设计是否和理
是不是还有更好的设计方法呢
希望大家给点意见 3Q!
...全文
136 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Demon1221 2004-08-27
  • 打赏
  • 举报
回复
谢谢大家 呵呵
yp2211 2004-08-26
  • 打赏
  • 举报
回复
如果不做特殊用途,还是少用clob
赞成armyyd(不会游泳的猫)
另外查询多的自然要建立视图,毫无疑问
更新频繁的话,应该考虑将不常更新的分开存储
armyyd 2004-08-26
  • 打赏
  • 举报
回复
clob字段是以二进制进行存放的,查询什么的都不方便
varchar2就有8000个byte,要是还不够用,那就不能算基本信息了。
建立子表
javaCandelaboy 2004-08-24
  • 打赏
  • 举报
回复
同意 armyyd(不会游泳的猫) 。
如果这些资料需要经常更新,还是分开为好。如基本不变,主要是查询,那就建立几个视图。
  • 打赏
  • 举报
回复
分开存放
armyyd 2004-08-24
  • 打赏
  • 举报
回复
如果是查询用得多,视图不错
如果读写多,分开存放。

我不清楚怎么你的基本信息库里有那么多的blob字段
Demon1221 2004-08-24
  • 打赏
  • 举报
回复
TO:armyyd(不会游泳的猫)

有些字段是动态增长的
我也不能预计它到底有多长
所以就设置成了CLOB (正在考虑不用它)
不知道CLOB与VARCHAR2比较 性能差多少?
Demon1221 2004-08-23
  • 打赏
  • 举报
回复
这些东西本来是可以放在一起的
我考虑的是 有些信息极少更新和使用
有些信息几乎每次都用,更新也很频繁

如果我没有理解错的话 数据应该是一行一行的存储的
感觉分开性能应该好点而已
不知道是不是真的好
关于视图 应该只是在逻辑上把信息区分罢了
没有达到提升性能的目的

不知道理解得对还是不对
yujiabian 2004-08-23
  • 打赏
  • 举报
回复
强烈建议将数据按照一定的规律区分,把经常需要做update的数据和单纯只是做查询的数据分开存储,要不然对数据库性能影响很大,用户的基本信息和登陆信息通常都是分开存储
qiaozhiwei 2004-08-23
  • 打赏
  • 举报
回复
我还是建议从范式的角度来考虑一下
dinya2003 2004-08-23
  • 打赏
  • 举报
回复
如果你现在开始设计的话,可以考虑分开存储,如果数据量不是很大的话,对性能上的影响也不大,
zsh168 2004-08-22
  • 打赏
  • 举报
回复
对,视图
Demon1221 2004-08-22
  • 打赏
  • 举报
回复
这样哪个性能好些呢?
derny 2004-08-22
  • 打赏
  • 举报
回复
设计视图
把你想要的常用的信息提取出来即可

3,490

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧