Невозможно создать первичные ключи MYSQL - PullRequest
0 голосов
/ 15 октября 2018

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

ALTER TABLE `match_team_recruit` DROP PRIMARY KEY,
ADD PRIMARY KEY (`ind_stnum`, `team_send`);

Однако при выполнении запроса я получаю следующую ошибку.

#1062 - Duplicate entry '183-0' for key 'PRIMARY'

Пожалуйста, смотрите прикрепленное изображение ниже: enter image description here

Может кто-нибудь посоветовать, как мне это решить?

1 Ответ

0 голосов
/ 15 октября 2018

Первичный ключ в MySQL должен следовать этим трем правилам.

  • Первичный ключ должен содержать уникальные значения.Если первичный ключ состоит из нескольких столбцов, комбинация значений в этих столбцах должна быть уникальной.
  • Столбец первичного ключа не может содержать значения NULL.Это означает, что вы должны объявить столбец первичного ключа с атрибутом NOT NULL.Если вы этого не сделаете, MySQL будет принудительно принудительно устанавливать столбец первичного ключа как NOT NULL.
  • Таблица имеет только один первичный ключ.

Предоставлено: Введение в первичный MySQLключ

Чтобы решить вашу проблему, вам нужно просто добавить один первичный ключ к вашей таблице.
Первичный ключ используется для различения рядов, поэтому вы не можете иметь несколько первичных ключей в одной таблице!

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