在 SQL Server 2005 中有没有办法解决这个问题?
(这让我很烦恼,每次遇到它时,我都会陷入困境。但这是我第一次不得不处理并进入 Stack Overflow。请保存我所拥有的一点点理智!)
维度表:
id INT IDENTITY(1,1)
FactTable:
source_id INT NOT NULL,
target_id INT NOT NULL
我创建了一个从“Fact.source_id”到“Dimension.id”的外键,并设置了级联删除和级联更新。
当我尝试对“Fact.target_id”执行相同操作时,我收到一条错误消息,告诉“哦,不,不,不”,因为级联有多个路径可供遵循。
这里没有涉及其他外键,只有我要创建的两个。我可以在没有级联的情况下创建第二个外键,但这对我来说似乎很糟糕。这是一组将手动维护的表(它们很少会被触及,所以客户不会为 gui 付费。)这样的级联删除/更新将非常有用,但仅如果它在两个字段上。(我很喜欢一致性)
****呜咽****