2016-08-14 31 views
0

here is my table structure外键约束被不正确地形成[同一表]

我想的是parent_forum将节省父论坛,这是相同的表id列值的ID的ID。正如你可以看到两列具有相同的类型。我的表引擎是InnoDB,我尝试下面的查询来添加一个约束。

ALTER TABLE `forums` ADD CONSTRAINT `parent_forum constraint` FOREIGN KEY (`id`) REFERENCES `codeigniter`.`forums`(`id`) ON DELETE RESTRICT ON UPDATE RESTRICT; 

我得到一个写在标题上的错误。 这里究竟有什么错误? Category_id成功与其他表ID值一起使用。

回答

1

我认为这是你正在寻找的语法:

ALTER TABLE forums ADD CONSTRAINT parent_forum_constraint 
    FOREIGN KEY (parent_forum) REFERENCES codeigniter.forums(id) 
     ON DELETE RESTRICT ON UPDATE RESTRICT; 

括号中的列是指references后列中的一个。另外,除非你有一个很好的理由,否则不要在名字中加空格。没有所有反引号,代码更可读。

+0

谢谢。我实际上是使用phpmyadmin关系视图来创建这个约束。 – user3111627