列值范围取决于另一列

时间:2012-11-09 04:07:09

标签: sql database-design relational-database database-schema

我正在设计一个包含一个表的小型数据库,该表的列可能值取决于另一列的值(在同一个表中),即

表A

field_a(fk)

field_b(fk)

field_b可以假设的值范围取决于field_b中包含的值。

我的解决方案是在表A中将field_a和field_b组合在一起,并创建一个包含以下内容的中间表:

表A

field_ab(fk到表B行)

表B

field_a(fk)

field_b(fk)

这样,表A的field_ab中的fk只能指向field_a和field_b的有效组合(假设表B已正确填充。)

这看起来真的很尴尬,特别是对于field_a或field_b上的查询,所以我知道我在做一些根本错误的事情 - 可能与普通表格有关吗?

有人可以建议我解决问题的正确方法吗?

1 个答案:

答案 0 :(得分:0)

考虑使用INSERT触发器更新计算值。