我想创建一个动态字段系统。这个想法是所有者可以为他的公司的客户创建动态字段。问题是我想出的数据库结构需要使用多态关联。 我的结构如下:
由以下几列组成的字段表:
ID,FieldName,FieldType (可能可以避免使用字段类型)
字段值表(有多个值表,用于动态字段ex的每种数据类型。一个表用于存储DATETIMES的值,一个表用于存储DECIMALS的值,依此类推。)。这些表具有相同的结构,但其value列具有不同的数据类型!它们由以下几列组成:
ID,FieldID,CustomerID,FieldValue
现在,为了获取字段值,我必须在值表和字段表之间进行一堆左联接并仅保留其值不是 NULL 的value列,因为只有一个value列(如果有)将具有值!当然,这根本没有效率,我正在努力避免这种情况。任何建议,即使它们完全需要完全不同的数据库结构,也欢迎。我还将MySQL和EntityFrameworkCore一起使用。