2016-08-14 7 views
0

here is my table structureограничения внешнего ключа неправильно формируется [та же таблица]

Я хотел бы, что parent_forum бы сохранить идентификатор родительского форума, который является идентификатором одного и того же значения столбца таблицы идентификаторов. Как вы можете видеть, оба столбца имеют один и тот же тип. Мой движок таблицы InnoDB, я попробую следующий запрос, чтобы добавить ограничение.

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

, и я получаю сообщение об ошибке, которое написано на название. Что здесь не так? Category_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

Смежные вопросы