我有一个名为Customer
的表,该表具有名为National Code
和Name
的几列。它还具有许多其他功能,称为Contact Numbers
和Recommenders
,因为Contact Numbers
和Recommenders
的数量不止一个,因此您需要其他一些表来存储它们。
还要假设我还有其他表,例如Customer
,每个表的许多属性都大于一个。
StringValue
的表进行存储。 EF core
是否有一种无需编写其他代码即可实现StringValue
的方法?示例:
Customer Table:
CustomerId Name NationalCode
------------------------------------------------------------------------
1 David xxxx
------------------------------------------------------------------------
StringValue Table:
StringId CustomerId StringName Value
------------------------------------------------------------------------
10 1 PhoneNumber 915245
11 1 PhoneNumber 985452
12 1 PhoneNumber 935446
13 1 Recommenders Mr Jhon
14 1 Recommenders Mr bb
------------------------------------------------------------------------
答案 0 :(得分:1)
我认为,为具有多个记录的字段创建一个新表是更直观的,然后在两个表之间配置一对多关系。以您的情况为例,您可以将客户表分为三个表,它们可以通过外键链接:
1。客户表:
CustomerId Name NationalCode
---------------------------------------------
1 David xxxx
2。联系表:
Id CustomerId PhoneNumber
---------------------------------------------
1 1 915245
2 1 985452
3 1 935446
3。推荐人表:
Id CustomerId RecommenderName
---------------------------------------------
1 1 Mr Jhon
2 1 Mr bb