实现表行之间的数据数学一致性



我有3个表:Persons, Variables, Person_Data

Person_Data表中有不同人各变量的数值数据。列是:variable_value, person_id (Persons的外键)和variable_id (fk到Variables)。

一些变量是相互关联的(例如:收入、家庭规模和人均收入)。我想创建一个Variable_Relationship表来存储这类信息并执行数据完整性检查。表中的一列是Dependant_Variable_Id(关系的LHS)。

  1. 问题是RHS变量的数量不是固定的,数学表达式也不是固定的。
  2. 有办法很好地实现这一点吗?

现在我正在考虑relationship_definition文本列以及另一个具有Relationship_IdRHS_VariableId列的表。

在我看来,没有办法在SQL中管理它,因为您没有办法解释用列值表示的动态公式。根据您用来访问数据库上的数据的语言,您应该开发一个表达式解析器(您可以搜索提供这种特性的大量开放源码库),并使用它解析从RHS列读取的表达式,对它们求值并执行完整性检查。

相关内容

  • 没有找到相关文章

最新更新