sql-server - 无法在引用同一表的同一列的表的两列上添加更新级联
问题描述
我正在使用 SQL Server。
我有一个名为的表PROGRAM_MASTER
,它有两列created_by
,updated_by
并且引用USERS
column 上的表id
。
现在我想使用下面的 SQL 命令为这两个列定义级联更新选项。
alter table program_master add constraint program_master_created_by_foreign foreign key (created_by) references users (id) on update cascade
alter table program_master add constraint program_master_upated_by_foreign foreign key (updated_by) references users (id) on update cascade
但是外键约束被添加到created_by
,但是在为updated_by
我创建一个时出现以下错误。
SQLSTATE[42000]:[Microsoft][ODBC Driver 17 for SQL Server][SQL Server]在表 'program_master' 上引入 FOREIGN KEY 约束 'program_master_updated_by_foreign' 可能会导致循环或多个级联路径。指定 ON DELETE NO ACTION 或 ON UPDATE NO ACTION,或修改其他 FOREIGN KEY 约束。
我应该如何解决这个错误?
解决方案
推荐阅读
- java - 无法在 Android Studio 中导入 OpenCV 库
- java - 在 java 中从 scala.collection.immutable.List 转换为 java.util.List
- css - React 组件不会与 react-bootstrap 导航栏对齐
- regex - 如何在 splunk 中第一次出现字符之前删除所有内容
- javascript - 为什么 (00123 + 34351) 在 javascript、java 和 python 中返回 34434 ?正确答案是 34474
- javascript - 在表单验证按钮单击后运行 JS 函数
- .net-core - 带有可移植 dotnet 二进制文件的 VSCode C#
- python - Django 使用模型表单更新模型实例
- c - cs50 pset4 过滤器边缘检测
- r - 有没有办法使用平均值(SE)而不是 R 中的计数来实现平面表?