2012-01-03 72 views
0

我使用海蒂和我有这个表:如何在Mysql中建立自我与自我的关系?

表类别:

  • ID
  • 标题
  • PARENT_ID

领域PARENT_ID是ID的参考。这样我就可以做一个无限级别的分类和子分类。如何在mysql语法中创建这种关系?

+0

首先,正使用InnoDB你的表? – 2012-01-03 17:54:06

+0

是 - default_storage_engine:INNODB – 2012-01-03 18:13:42

回答

1

如果你的意思是你如何创建外键约束,你需要做的仅仅是这样的:

CREATE TABLE `EXAMPLE` (
    `ID` int(11) NOT NULL, 
    `TITLE` varchar(255) NOT NULL, 
    `PARENT_ID` int(11) DEFAULT NULL, 
    PRIMARY KEY (`ID`), 
    KEY `PARENT_ID` (`PARENT_ID`), 
    CONSTRAINT `PARENT` FOREIGN KEY (`PARENT_ID`) REFERENCES `EXAMPLE` (`ID`) 
); 
+0

不,它不是FOREIGN KEY关系。我需要在这个表中做一个自我与自我的关系。 parent_id是指编号 – 2012-01-04 13:12:42

+0

如果你看看我提供的DDL作为例子,那就是它的作用。它创建一个自引用外键约束。 – Atonewell 2012-01-04 14:20:02