请教一个数据库设计的问题

[复制链接]
查看11 | 回复3 | 2010-3-1 11:19:10 | 显示全部楼层 |阅读模式
在一个表中需要设计多个标志位,在使用的时候某条sql使用了全部标志位,其他sql使用的单独一到两条标志位,请问是把这些标志位全放到一个字段里,第一位表示xx,第二位表示xx。。。是这样好,还是分开设计,每个标志位一个字段好? 哪个效率高呢?
是金融行业系统,对系统稳定性,可维护性,性能方面要求甚高。
多谢啦

回复

使用道具 举报

千问 | 2010-3-1 11:19:10 | 显示全部楼层
和楼主碰到的问题类似,我这边的是相同类型的资讯数据,有的具有5个属性,有的具有10个属性,我们现在的处理方式就是把共有的属性放到一张表,另外不固定的属性放到另外一张垂直表,结构如下:
ID 属性名 属性值
1地区北京
2行业教育
然后通过ID值查找记录所具备的所有额外属性,然后再做一个行列转换。
这样的话,主表就不会太宽,不过这样做是在确定大多数记录没有额外的属性。
回复

使用道具 举报

千问 | 2010-3-1 11:19:10 | 显示全部楼层
主要是看你的标志位多少,是否需要动态维护,如果最多只有三个、五个直接加上就可以了,没有的留空。如果有10个或更多,甚至需要动态维护,那就加一张表吧
回复

使用道具 举报

千问 | 2010-3-1 11:19:10 | 显示全部楼层
>>是这样好,还是分开设计,每个标志位一个字段好? 哪个效率高呢?
感觉一个标志位一个字段更好。
如果全部标志位(几个字节?)都放在一个字段里,作出判断,是否需要更多的操作和运算?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行