我有一张会议桌。会议可以有相关会议的列表。这是什么被视为递归协会?SQL多对多递归关联?
这是通过让另一个表ConferenceAssociatedConference具有两个字段(ConferenceId,AssociatedConferenceId)并且这两个字段都是外键指向会议表的同一个ConferenceId字段来完成的吗?
我虽然以上是正确的,但创造和建设我的EDMX时,我得到:
错误6错误3034:问题在映射片段开始线875,982:两个实体可能具有不同的键映射到同一排。确保这两个映射片段将AssociationSet的两端映射到相应的列。
CREATE TABLE [dbo].[ConferenceAssociatedConference](
[ConferenceId] [nvarchar](50) NOT NULL,
[AssociatedConferenceId] [nvarchar](50) NOT NULL,
CONSTRAINT [PK_ConferenceAssociatedConference] PRIMARY KEY CLUSTERED
(
[ConferenceId] ASC,
[AssociatedConferenceId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[ConferenceAssociatedConference] WITH CHECK ADD CONSTRAINT [FkConfAssociatedConf_AssociatedConferenceId] FOREIGN KEY([AssociatedConferenceId])
REFERENCES [dbo].[Conference] ([ConferenceId])
GO
ALTER TABLE [dbo].[ConferenceAssociatedConference] CHECK CONSTRAINT [FkConfAssociatedConf_AssociatedConferenceId]
GO
ALTER TABLE [dbo].[ConferenceAssociatedConference] WITH CHECK ADD CONSTRAINT [FkConfAssociatedConf_ConferenceId] FOREIGN KEY([ConferenceId])
REFERENCES [dbo].[Conference] ([ConferenceId])
GO
ALTER TABLE [dbo].[ConferenceAssociatedConference] CHECK CONSTRAINT [FkConfAssociatedConf_ConferenceId]
GO
嗨amahfouz,加入awnser – Alex808 2015-02-24 03:26:46