首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何删除复合主键

如何删除复合主键
EN

Stack Overflow用户
提问于 2014-02-17 09:24:29
回答 1查看 1.9K关注 0票数 1

我有一个表friends_list,我想要删除它的复合主键(friend_of_idfriends_id_is),并创建一个新的复合主键(friend_of_aidfriends_aid)。

为了删除主键,我编写了查询

代码语言:javascript
复制
ALTER TABLE friends_list  DROP PRIMARY KEY

但这显示了以下错误

代码语言:javascript
复制
#1025 - Error on rename of '.\xrcwrn_sms\#sql-14d4_e0' to '.\xrcwrn_sms\friends_list' (errno: 150)

我遵循this post,但是对于复合主键,这个键不能工作,我的表结构图如下所示

EN

回答 1

Stack Overflow用户

发布于 2014-02-17 09:32:37

检查此表上的外键,例如使用next查询-

代码语言:javascript
复制
SELECT
  *
FROM information_schema.REFERENTIAL_CONSTRAINTS
  WHERE CONSTRAINT_SCHEMA = 'db name' AND REFERENCED_TABLE_NAME = 'your table';

您需要重新创建所有这些外键:

  1. 删除外键
  2. 重新创建rpimary密钥
  3. 创建外键
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21825139

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档