MySQL外键递归

时间:2009-12-28 12:54:19

标签: mysql

我有一个具有结构的“类别”表:

  • 的categoryId
  • parentId的
  • 类别名称

此表表示分类树结构,其中parentId实际上是指向categoryId的指针。

是否可以将外键RESTRICT放到parentId,指向categoryId,以便禁用子节点的删除?

1 个答案:

答案 0 :(得分:2)

是的,当然表可能有外键引用自身。例如:

CREATE TABLE categories (
    categoryId INTEGER NOT NULL PRIMARY KEY,
    parentId INTEGER REFERENCES categories(categoryId),
    categoryName VARCHAR(32) NOT NULL
);

当然,你需要使用InnoDB而不是MyISAM来做这件事。