首页 > 解决方案 > 试图避免动态字段模式中的多态关联

问题描述

我想创建一个动态字段系统。这个想法是所有者将能够为其公司的客户创建动态字段。问题是我想出的数据库结构需要使用多态关联。我的结构如下:

  1. 由以下列组成的字段表:

    ID、FieldName、FieldType(字段类型可以避免,大概)

  2. 字段值表(有多个值表,一个用于动态字段的每种数据类型,例如一个存储 DATETIMES 值的表,一个存储 DECIMALS 值的表等。)这些表有相同的结构,但它们的值列具有不同的数据类型!它们由以下列组成:

    ID、FieldID、CustomerID、FieldValue

现在,为了获得字段值,我必须在值表字段表之间做一堆连接,并且只保留它的值不是NULL的值列,因为如果有的话,只有一个值列会有价值!当然,这根本没有效率,我试图避免它。欢迎任何建议,即使它们需要完全不同的数据库结构。我还在使用 MySQL 和 EntityFrameworkCore。

标签: sqlpolymorphic-associations

解决方案


推荐阅读