小编vas*_*rov的帖子

当我有“ON UPDATE CASCADE”时,MySql“无法更新父行”

所以,我得到:

错误代码:1451。无法删除或更新父行:外键约束失败(playground. Person、CONSTRAINT sk_Person_Parent FOREIGN KEY ( parent_id) REFERENCES Person( id) ON DELETE CASCADE ON UPDATE CASCADE)

这是一个简单的表格,引用自身:

CREATE TABLE IF NOT EXISTS Person (
id int not null primary key,
name varchar(100) not null,
parent_id int null,
CONSTRAINT `sk_Person_Parent`
  FOREIGN KEY (parent_id)
  REFERENCES Person (id)
  ON DELETE CASCADE
  ON UPDATE CASCADE
);
Run Code Online (Sandbox Code Playgroud)

如您所见,有“ON UPDATE CASCADE”。我在其中插入 4 个简单的行:

INSERT INTO Person(id, name, parent_id)
VALUES
(1, 'vasko', NULL), 
(2, 'asdas', 1), 
(3, 'ivo', 1), 
(4, …
Run Code Online (Sandbox Code Playgroud)

mysql sql cascade onupdate

3
推荐指数
1
解决办法
1801
查看次数

标签 统计

cascade ×1

mysql ×1

onupdate ×1

sql ×1