错误 1452:在树结构中添加根时无法添加或更新子行

ERROR 1452: Cannot add or update a child row when adding root in a tree structure

我已经用这个查询创建了一个数据库:

CREATE TABLE progettoschemas.categories (
  id DOUBLE NOT NULL,
  name VARCHAR(255) NOT NULL,
  fatherid DOUBLE NOT NULL,
  PRIMARY KEY (id),
  FOREIGN KEY (fatherid) REFERENCES progettoschemas.categories(id) ON UPDATE CASCADE ON DELETE CASCADE)

因为我想要一个树结构,其中一个元素与其父 ID 相关。现在的问题是我希望 root 具有如下参数:id=1 name=root fatherid=0(fatherid=0 很重要,我不想更改它,因为如果我这样做,我将不得不修改很多我的代码),但显然 mysql 不允许我这样做,因为没有引用 0 作为 fatherid。有没有办法解决我的问题,即维护我想要的参数,或者我必须以某些方式修改它们?

没有修改我的数据库结构,我没有找到任何有效的解决方案,所以我被迫将我的数据库更改为:

CREATE TABLE progettoschemas.categories (
  id DOUBLE NOT NULL,
  name VARCHAR(255) NOT NULL,
  fatherid DOUBLE,
  PRIMARY KEY (id),
  FOREIGN KEY (fatherid) REFERENCES progettoschemas.categories(id) ON UPDATE CASCADE ON DELETE CASCADE)

并添加了一个名为 root 且 id=0 且 fatherid=null 的行