2014-02-17 5 views
0

У меня есть таблица friends_list Я хочу удалить его составной первичный ключ (friend_of_id, friends_id_is) и создать новый составной первичный ключ (friend_of_aid, friends_aid).Как удалить составной первичный ключ

для удаления первичного ключа я написал запрос

ALTER TABLE friends_list DROP PRIMARY KEY 

, но это показывает следующее сообщение об ошибке

#1025 - Error on rename of '.\xrcwrn_sms\#sql-14d4_e0' to '.\xrcwrn_sms\friends_list' (errno: 150) 

Я следующий this post но для составного первичного ключа это не работает Моя структура таблицы ПИК является следующим:

enter image description here

ответ

0

Проверить внешние ключи на этой таблице, например, с помощью следующего запроса -

SELECT 
    * 
FROM information_schema.REFERENTIAL_CONSTRAINTS 
    WHERE CONSTRAINT_SCHEMA = 'db name' AND REFERENCED_TABLE_NAME = 'your table'; 

Вам необходимо обновить все эти внешние ключи:

  1. падения внешнего ключа (s)
  2. воссоздавать rpimary ключ
  3. Создание внешнего ключа (ов)
+0

Я попытался запрос с указанием ошибки '# 1064 - у вас есть ERR или в синтаксисе SQL; проверьте руководство, соответствующее версии сервера MySQL, для правильного синтаксиса для использования рядом с 'REFERENCED_TABLE_NAME = 'friends_list' LIMIT 0, 30' в строке 4' – xrcwrn

+0

Добавить И ключевое слово между условиями. – Devart

Смежные вопросы