关于数据库设计的疑问
设计数据库的时候,可能有些字段的值是可以枚举出来的,我之前一直使用的方法是将这些枚举值放在一张表中,然后在另一张表的某个字段中引用枚举值那张表为外键,这样可以控制数据的一致性,但是这样设计有时会导致系统中使用的时候要查询两次表,这又会影响效率。如果把那些可以枚举出来的值直接存到表中,这样就可以只查询一次。这两种设计到底哪种比较好?
------解决方案--------------------两个表吧,查询时,实在不想涉及两个表,第一个表中加个冗余字段,不过要做些特别处理(如在触发器中处理),让此冗余字段的值为你另一个表对应的值,查询时就可按一张表了
不过一般还是独立两张表
------解决方案--------------------枚举的 直接放到程序的配置文件里面多爽。
------解决方案--------------------文件存放是方便,但是,客户端多了,就还是数据库存放更集中方便了
我建议专门枚举表还是要,只是所有枚举信息都存这一个表!以ftype字段做区分
------解决方案--------------------我同意2楼的方法,直接在XML配置文件里设置最方便了。