我有 2 张桌子,请检查所附图片
PK:PK
前K:前K
Pk表中的P_Id为主键,FK表中的P_Id为外键。
我需要将 10 添加到 PK 和 FK 表的 P_Id 列中的所有记录(意味着它们需要始终匹配)
我知道在 MS SQL 中我们可以轻松更新级联,如下所示:
ALTER TABLE FK
ADD CONSTRAINT FK_P_Id
FOREIGN KEY (P_Id)
REFERENCES PK (P_Id) ON UPDATE CASCADE
Run Code Online (Sandbox Code Playgroud)
然后更新 PK 的行,这也会自动更新 FK 。
update A
set A.P_Id= A.P_Id + 10
from PK A inner join FK B
on A.P_Id = B.P_Id
Run Code Online (Sandbox Code Playgroud)
但是,我不确定这在 DB2 中是如何工作的..有人可以帮忙吗?
我怎样才能让它发挥作用?
预先感谢斯瓦特
小智 5
使用
SET FOREIGN_KEY_CHECKS = 0;
Run Code Online (Sandbox Code Playgroud)
更新两个表;
进而
SET FOREIGN_KEY_CHECKS = 1;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22237 次 |
| 最近记录: |