MySQL: изменить уникальное имя ключа? - PullRequest
3 голосов
/ 19 июля 2011

Я хочу переименовать «InputOutputConfigurationServerAccountId» в «CompositeKey». Как мне сделать это через SQL?

Часть моего определения таблицы:

UNIQUE KEY `InputOutputConfigurationServerAccountId` (`InputOutputConfigurationServerAccountId`,`Identifier`,`TimeStampReceived`)

Таблица уже в производстве. Я пытаюсь изменить таблицу.

Ответы [ 2 ]

7 голосов
/ 19 июля 2011

Да, Феми прав.это будет сделано так:

ALTER TABLE `test`.`UniqueKeys` 

DROP INDEX `InputOutputConfigurationServerAccountId`, 
ADD UNIQUE INDEX `CompositeKey` (`InputOutputConfigurationServerAccountId`,
`Identifier`,`TimeStampReceived`) ;
1 голос
/ 19 июля 2011

В настоящее время нет поддержки в Синтаксис MySQL ALTER для переименования ключа.Вам нужно будет создать новый составной ключ и отбросить старый.

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