0

我有一个表“办公室”,其中包含以下字段:

  • id, int(10) 无符号 auto_inc
  • fk_office, int(10) 无符号,可以为 NULL
  • 地址
  • 网址
  • 电子邮件

一个办公室可能依赖于另一个办公室(用于构建依赖关系树),所以我用 phpMyAdmin 建立了与同一个表的外键关系,该表声明:

office.fk_office 与 office.id 相关 - ON DELETE SET NULL, ON UPDATE CASCADE

我认为这意味着当一个办公室被删除时,它的 fk_office 应该设置为 NULL,而不删除它的子办公室,当一个办公室被更新时,它的子办公室也应该这样做,我错了吗?

现在我的问题是在插入. 我还有其他表格(电话、小时等)列出了每个办公室和营业时间的电话传真号码。这些表的 FK 指向 office 表(id​​ 字段)

为什么我得到

1452 - 无法添加或更新子行:外键约束失败

将新记录插入办公桌时?我应该优化/改变这个设计吗?

谢谢

4

0 回答 0