проблема с индексом -mysql workbench

#mysql #database #database-design #phpmyadmin

#mysql #База данных #база данных-дизайн #phpmyadmin

Вопрос:

Отношение PRIMARY равно fk_student_single_user1. , поэтому я должен удалить одно из них.

Проблема в том, что я не могу удалить или переименовать PRIMARY в workbench, программа не разрешает, и если я удаляю fk_student_single_user1 , я также удаляю foreign key . Единственный способ — удалить PRIMARY в phpmyadmin.

Но я думаю, что существует какая-либо проблема в моей модели eer, предполагается экспорт без ошибок. Я удалил свой предыдущий идентификатор столбца, потому что два внешних ключа могут быть первичным ключом таблицы.

Как я могу это решить?

введите описание изображения здесь

Ответ №1:

Попробуйте удалить внешний ключ, отбросив ненужный индекс fkey и повторно добавив внешний ключ, используя обычный sql ( alter table... ), а не ваш графический интерфейс.

Спецификация SQL требует уникального индекса в целевом столбце, поэтому нет причин добавлять дополнительный (неуникальный) индекс сверху.

Если MySQL все еще добавляет индекс, вы можете сообщить об этом как об ошибке (а такжеhttp://sql-info.de/mysql/gotchas.html ).

Если нет, вы можете захотеть проверить, был ли индекс добавлен вашим графическим интерфейсом в первую очередь. И если это так, сообщите о проблеме как об ошибке создателю графического интерфейса пользователя.

Комментарии:

1. проблема решена. Проблема возникает из-за того, что я хочу использовать два типа внешних ключей, один идентифицированный, а другой неидентифицированный. Итак, я решил проблему, когда сделал два внешних ключа неидентифицированными — в основном одного типа