Удалить зомб ie внешних ключей в MYSQL - PullRequest
0 голосов
/ 20 февраля 2020

Я пытаюсь построить базу данных MySQL постепенно, путем генерации с использованием JPA и Eclipse-Link. Попутно я изменил некоторые отношения @ManyToOne, @OneToOne et c.

Теперь у меня есть ситуация, когда у меня есть некоторые ложные внешние ключи: таблицы не существуют, но ссылочные таблицы все еще делают. Я думаю, что исходные таблицы были таблицами перекрестных ссылок, сгенерированными EclipseLink, но их больше нет.

Проблема в том, что я не могу удалить эти ссылочные таблицы. Я получаю сообщение об ошибке, похожее на это:

mysql> drop table PRODUCTDO;
ERROR 3730 (HY000): Cannot drop table 'PRODUCTDO' referenced by a foreign key constraint 'PRODUCTDO_DISTRIBUTIONCENTERPRODUCTDO_ProductDo_ID' on table 'PRODUCTDO_DISTRIBUTIONCENTERPRODUCTDO'.

Если я запускаю:

SET foreign_key_checks = 0;

, тогда я могу удалить таблицу, но ограничение по-прежнему сохраняется. Даже если я удаляю базу данных и создаю ее снова, ограничение все еще существует:

mysql> SELECT    TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME, REFERENCED_TABLE_NAME,REFERENCED_COLUMN_NAME FROM   INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = 'SCO';
+---------------------------------------+------------------------------+----------------------------------------------------+-----------------------------+------------------------+
| TABLE_NAME                            | COLUMN_NAME                  | CONSTRAINT_NAME                                    | REFERENCED_TABLE_NAME       | REFERENCED_COLUMN_NAME |
+---------------------------------------+------------------------------+----------------------------------------------------+-----------------------------+------------------------+
| PRODUCTDO_DISTRIBUTIONCENTERPRODUCTDO | ProductDo_ID                 | PRODUCTDO_DISTRIBUTIONCENTERPRODUCTDO_ProductDo_ID | PRODUCTDO                   | ID                     |
| PRODUCTDO_DISTRIBUTIONCENTERPRODUCTDO | distributionCenterProduct_ID | PRDCTDDSTRBTIONCENTERPRODUCTDOdstrbtnCntrProductID | DISTRIBUTIONCENTERPRODUCTDO | ID                     |
+---------------------------------------+------------------------------+----------------------------------------------------+-----------------------------+------------------------+
2 rows in set (0.01 sec)

Как мне избавиться от этих ограничений зомба ie?

1 Ответ

0 голосов
/ 21 февраля 2020

В итоге мне пришлось воссоздать таблицу и внешний ключ, после чего я смог ее удалить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...