Mysql 如何删除复合主键

Mysql 如何删除复合主键,mysql,Mysql,我有一个表friends\u列表,我想删除它的复合主键(friends\u of\u id,friends\u id\u is),并想创建一个新的复合主键(friends\u of\u aid,friends\u aid) 为了删除主键,我编写了查询 ALTER TABLE friends_list DROP PRIMARY KEY 但这显示了以下错误 #1025 - Error on rename of '.\xrcwrn_sms\#sql-14d4_e0' to '.\xrcwrn_sm

我有一个表friends\u列表,我想删除它的复合主键(
friends\u of\u id
friends\u id\u is
),并想创建一个新的复合主键(
friends\u of\u aid
friends\u 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)
我正在跟踪,但对于复合主键,这不起作用 我的桌子结构图如下


检查此表上的外键,例如使用下一个查询-

SELECT
  *
FROM information_schema.REFERENTIAL_CONSTRAINTS
  WHERE CONSTRAINT_SCHEMA = 'db name' AND REFERENCED_TABLE_NAME = 'your table';
您需要重新创建所有这些外键:

  • 删除外键
  • 重新创建主密钥
  • 创建外键

  • 我尝试了显示错误
    #1064的查询-您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以了解在第4行“在条件之间添加和关键字”附近使用的正确语法“REFERENCED\u TABLE\u NAME=
    friends\u list`LIMIT 0,30'。