Wordpress PHPMyAdmin-从没有唯一列的表中删除行

Wordpress PHPMyAdmin-从没有唯一列的表中删除行,wordpress,Wordpress,这真的很烦人,我在导入数据库时多次遇到此问题: 因为它没有唯一的列,所以无法删除行。因为我不能删除行,所以我不能分配唯一的列,因为我不能删除具有该列重复条目的行(ID=0的行) 我不记得以前是怎么修的。我甚至不知道这个问题是如何发生的,我以为wp_options表在默认情况下会在ID列上有一个唯一的键 啊,对不起,解决方法真的很简单。PHPMyAdmin只是阻止您通过GUI删除行,但用于删除行的SQL查询仍然有效。我通过进入SQL选项卡并运行DELETE FROM wp_options,其中o

这真的很烦人,我在导入数据库时多次遇到此问题:

因为它没有唯一的列,所以无法删除行。因为我不能删除行,所以我不能分配唯一的列,因为我不能删除具有该列重复条目的行(ID=0的行)


我不记得以前是怎么修的。我甚至不知道这个问题是如何发生的,我以为wp_options表在默认情况下会在ID列上有一个唯一的键

啊,对不起,解决方法真的很简单。PHPMyAdmin只是阻止您通过GUI删除行,但用于删除行的SQL查询仍然有效。我通过进入SQL选项卡并运行
DELETE FROM wp_options,其中option_id='0',删除了那些重复的行

我也遇到了这个问题,并且想到了同样的问题(注意:不仅仅是wp_选项表,其他表也会有问题!)

问题在于处理导出/导入的方式

在phpMyAdmin界面的某个地方,在“对象创建”选项下有一个用于导出的微妙的“自动增量”复选框:

注意:一旦您导出/导入并发现自己正在处理此问题,我提出的解决此问题的最简单方法是:

  • 创建一个名为“new\u ID”的新列,使其成为
    AUTO\u INCREMENT
  • 那么, A.运行查询以将现有ID列更新为新的\u ID值,或者 B删除现有ID列,并将“new_ID”重命名为正确的名称,并添加一个
    主键
    索引

  • 我找出了问题的原因。导入SQL文件时,导入其中一个表的键时出错。因此,在此之后它跳过了每个键的导入,并且选项_id unique key是它跳过的键之一。是的,你是对的,问题也发生在很多其他的桌子上。解决方案是从.sql文件导入其余的键、索引和内容

    我的意思是:

    --

    --表
    wp\u链接的索引
    更改表格
    wp\u链接
    添加主键(
    link\u id
    ),添加键
    link\u visible
    link\u visible

    --

    --表
    wp\u选项的索引
    更改表格
    wp\u选项
    添加主键(
    option\u id
    ),添加唯一键
    option\u name
    option\u name
    ),添加键
    wpe\u autoload\u options\u index
    autoload

    我忘记在导入新数据库表之前删除wp_links表,因此它无法创建link_id主键,因为它已经存在。结果,文件中出现的每个密钥都被跳过