首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Server错误:在表上引入外键约束可能会导致循环或多个级联路径

Server错误:在表上引入外键约束可能会导致循环或多个级联路径
EN

Stack Overflow用户
提问于 2020-07-06 19:35:35
回答 1查看 2.6K关注 0票数 0

我有两个表,User and Data. For audit purposes, I have two columns added in the . For audit purposes, I have two columns added in the

这两列都引用User表及其UserId列。我在这两个外键上设置了一个On delete set null约束。Server不允许我创建表Data并引发错误:

在表‘数据’上引入外键约束'FK__Data__LastModifi__0A9D95DB‘可能会导致循环或多个级联路径。指定“删除不操作”或“更新不操作”,或修改其他外键约束。

这些是SQL脚本:

代码语言:javascript
运行
复制
CREATE TABLE [User]
( 
    UserId int PRIMARY KEY IDENTITY(1,1),
    Name varchar(100) not null
)
 
CREATE TABLE [Data]
(
    Id int PRIMARY KEY IDENTITY(1,1),
    A int,
    B varchar(10),
    AddedBy int 
        FOREIGN KEY REFERENCES [User](UserId) 
                ON DELETE SET NULL,
    LastModifiedBy int 
        FOREIGN KEY REFERENCES [User](UserId) 
                ON DELETE SET NULL
)

删除ON DELETE约束解决了这个问题,但是为什么我不能有两个ON DELETE SET NULL条件呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-06 20:31:46

为什么我不能有两个关于删除设置为空的条件?

因为这会导致多个级联路径,而Server只是不支持这种方式。

有一个悬而未决的反馈请求,并允许在父子关系中级联这里

作为解决办法,您可以在DELETE NO操作上创建关系之一,或者在处理级联行为的用户上使用一个而不是DELETE触发器。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62763244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档