Ошибка создания отношений в MySQL

У меня есть три таблицы (все InnoDB с первичными ключами, имеющие тип int(7))

tblcustomers: первичный ключ - customer_id

tblorders: первичным ключом является order_id (имеет поле для customer_id с именем order_customer)

tblorder_detail: первичным ключом является order_detail_id (имеет поле для order_id, называемое order_id)

Я хочу создать отношения, чтобы при удалении клиента удалялась его история заказов.

Я использовал следующий оператор, чтобы изменить таблицу заказов:

ALTER TABLE `tblorders`
  ADD CONSTRAINT `FK_myKey` FOREIGN KEY (`order_customer`) REFERENCES `tblcustomers` (`customer_id`) ON DELETE CASCADE ON UPDATE CASCADE;

Это было успешно, и удаление клиента удаляет связанные с ним заказы.

Затем я попробовал следующее, и я получил ошибку:

ALTER TABLE `tblorder_detail`
  ADD CONSTRAINT `FK_myKey` FOREIGN KEY (`order_id`) REFERENCES `tblorders` (`order_id`) ON DELETE CASCADE ON UPDATE CASCADE

Это ошибка (wtc-ecommerce - это имя базы данных):

1005 - Невозможно создать таблицу "wtc-ecommerce.# Sql-5d2_c2" (номер ошибки: 121)

Читая другие SO сообщения, кажется, что все правильно настроено, поэтому я заблудился.

Спасибо

0 ответов

Другие вопросы по тегам