首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多个级联路径,在更新级联时

多个级联路径,在更新级联时
EN

Stack Overflow用户
提问于 2014-03-11 01:03:37
回答 1查看 524关注 0票数 2

我有一个sql服务器的问题,当我想要有3个表,并在它们之间建立关系,并更改“在更新”属性为“层叠”。

当我想要保存图表时,就会出现这个问题:

在表'Company‘上引入外键约束'FK_Company_Slave’可能会导致循环或多个级联路径。指定ON DELETE NO操作或ON UPDATE NO操作,或修改其他外键约束。无法创建约束。请参阅前面的错误。

在这张图中,我定义了我的数据库,FK和....

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-06-22 18:41:50

优先:

一个表中的FOREIGN KEY指向另一个表中的PRIMARY KEY。如果您不想为了外键而在其他表上使用PRIMARY KEY,则必须在该表上创建唯一索引。

Second:

您可以在Master表上创建after触发器,以便在update cascade上手动开发。换句话说,在没有使用on update级联的情况下创建Company表和Master表之间的外键,然后在master表上创建以下触发器,以便在Master表中的行发生更改后更新company表。

代码语言:javascript
复制
create trigger triggername on dbo.[Master]
After Insert 
AS Begin
    Update Company
    Set MasterKey = I.MasterKey
    From Inserted I
    Inner join Deleted D on D.Code = I.Code
    Where Company.MasterKey = D.MasterKey
End
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22306569

复制
相关文章

相似问题

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