VS2008 / SQL Server:快速设置多对多表

时间:2009-07-31 09:17:34

标签: sql-server database visual-studio many-to-many

我最近开始使用Visual Studio 2008和SQL Server Express。我来自Emacs / Django背景,所以我不习惯这种工作方式。有没有快速简便的方法在两个其他表之间设置多对多表?这相当于Django中ManyToManyField生成的表。

1 个答案:

答案 0 :(得分:1)

是的,假设你有两张桌子:SALESPERSON和SALESREGION。单个销售人员可以与多个区域相关联,反之亦然。假设SALESPERSON有一个非复合主键:salesperson_id(int,pk)和SALESREGION具有相同的:salesregion_id(int,pk)。

使用两个外键列创建另一个名为SALESPERSON_SALESREGION的表:salesperson_id(int)和salesregion_id(int)。为此表创建包含两列的复合主键。

现在,添加和删除关系就像在新表中添加和删除行一样简单。

一些ORM框架,如Entity Spaces,我假设新ADO.NET Entity Framework识别此模式,并将在生成的实体数据访问层中创建多对多结构。