create table employee(emp_id int primary key ,emp_name char(9),
spouse_id int,foreign key(spouse_id)references employee (emp_id)
on delete cascade set null on update cascade);
嗨朋友
当我删除数据时,它会对相关数据产生影响。但是当我尝试更新它时,它会给出错误无法更改父数据。请帮我找到解决方案。
create table employee(emp_id int primary key ,emp_name char(9),
spouse_id int,foreign key(spouse_id)references employee (emp_id)
on delete cascade set null on update cascade);
嗨朋友
当我删除数据时,它会对相关数据产生影响。但是当我尝试更新它时,它会给出错误无法更改父数据。请帮我找到解决方案。
移除级联
on delete set null
但关于编辑..它在我的例子中工作正常..
也许这可以帮助你从 Mysql 参考:
偏离 SQL 标准:如果 ON UPDATE CASCADE 或 ON UPDATE SET NULL 递归更新它先前在级联期间更新的同一个表,它的行为类似于 RESTRICT。这意味着您不能使用自引用 ON UPDATE CASCADE 或 ON UPDATE SET NULL 操作。这是为了防止级联更新导致的无限循环。另一方面,自引用 ON DELETE SET NULL 是可能的,自引用 ON DELETE CASCADE 也是如此。级联操作的嵌套深度不得超过 15 层。