2010-04-14 5 views
4

У меня есть таблица проектов, которая имеет поле image_id и поле newsimage_id.Два внешних ключа на одной колонке из одной таблицы

Оба связаны с таблицей изображений. Но InnoDB не позволяет мне установить внешний ключ для оба поля в тот же столбец (id).

Есть ли способ, которым я могу это сделать или это невозможно? Я использую MySQL через MAMP.

Спасибо заранее!

ответ

5

Вот как я это сделал (MySQL 5.0.45):

ALTER TABLE `job_dependency` 
ADD FOREIGN KEY (`job`) REFERENCES `job` (`id`), 
ADD FOREIGN KEY (`dependency`) REFERENCES `job` (`id`); 

Есть проблемы с ON DELETE CASCADE в этой ситуации, так что не использовать его.

+1

@prz: вы сделали трюк! когда я не использую ON DELETE CASCADE, он работает. Благодаря!!! – makeflo

+0

Вы, ребята, знаете, в чем проблема с ВКЛ. УДАЛИТЬ КАСКАД здесь? – quickshiftin

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