删除表/数据库时仍然错误“定义了多个主键”

Posted

技术标签:

【中文标题】删除表/数据库时仍然错误“定义了多个主键”【英文标题】:still error "multiple primary keys defined" when tables/databases are dropped 【发布时间】:2019-08-22 09:33:25 【问题描述】:

我想将我的实时站点(wordpress)放在本地主机上,所以我用 phpmyadmin 导出了数据库(打开了删除数据库和表的选项)。使用 BigDump 在 localhost 上导入时,我收到“定义了多个主键”的错误消息。 我该如何解决这个问题?

到目前为止,我阅读的所有建议都说从实时站点导出时删除表和/或数据库。我这样做了,但这没有什么区别。我还能做些什么来在 localhost 上成功导入数据库?

【问题讨论】:

【参考方案1】:

检查导出文件中的创建表语句。可能在您创建状态的某处定义了两个主键。

一张表只能有一个主键,它可以由单个或多个字段组成。当多个字段用作主键时,它们称为复合键。

如果可能,请手动创建数据库和表,并从导出的文件中删除表创建语句,您只能从文件中获取数据。

【讨论】:

感谢您的建议。我找不到表的多个主键。我导出了数据库并尝试打开任何/所有选项“删除表”、“删除数据库”、“导入前的空表”(除了打开的标准选项)。错误依旧:ADD KEY meta_key (meta_key(191)); ALTER TABLE wp_commentmeta ADD PRIMARY KEY (meta_id), ADD KEY comment_id (comment_id), ADD KEY meta_key (meta_key(191)) mysql: 多个主键定义

以上是关于删除表/数据库时仍然错误“定义了多个主键”的主要内容,如果未能解决你的问题,请参考以下文章

php工匠迁移。定义了多个主键

错误:删除表违反外键约束。密钥 id 仍然从表中引用(很多)

我已经从清单中删除了呼叫和短信权限,但在上传 apk 时仍然出现错误

无法删除表,因为其他对象依赖于它

删除数据库表中空的一行时,弹出这样一个错误,帮帮忙。

Mysql 导入时出错