关联后发布的新列

本文关键字:新列 关联 | 更新日期: 2024-09-21 20:37:03

我在Visual studio中创建了两个表,比如TA和TB。在edmx文件中,我在TA和TB之间建立了一对多关联。在进行关联之后,在TB中生成一个名为TAId的新列。

我只是想知道我是否必须在数据库的TB表中添加该列?

编辑:我得到的异常:

nCeremony.msl(23,10):错误3004:映射开始于的片段时出现问题第23行:没有为集合中的属性CourseOption.MenuId指定映射课程选项。

具有密钥(PK)的实体在以下情况下不会往返:

实体类型为[CeremonyDBModel.CurseOption]

典礼。msl(31,10):错误3004:从第31行开始映射片段时出现问题:没有映射为"设置菜单"中的属性Menu.CeremonyId指定。

具有密钥(PK)的实体在以下情况下不会往返:

实体类型为[CeremonyDBModel.Menu]

关联后发布的新列

一对多关联是通过让子表中的记录引用其父表来完成的。

以客户和购买为例。一个客户可以进行多次购买,但每次购买只能属于一个客户。考虑以下两个表:

customers     purchases
============  ===========
id  name      id  customer_id  product

每个客户都有一个唯一的ID和一个名称。每次购买都有一个唯一的ID和一个产品名称。但是,为了具有一对多关联,采购表必须引用哪个客户进行了采购。你不能反过来做,否则你会有重复的客户名称,每个客户都引用一些购买。

例如:

customers     purchases
============  ===========
id  name      id  customer_id  product
--- --------  --- ------------ --------
1   John      1   1            apple
2   Mary      2   1            orange
              3   2            banana

在这个例子中,你可以看到约翰买了一个苹果和一个橙子,玛丽买了一根香蕉。

customer_id列是采购表与客户表建立关系所必需的。

通过在TA表和TB表之间创建关联,Visual Studio为您创建了列TAid,因为这就是关系数据库(如MS SQL Server)处理它们的方式。