【问题标题】:How to remove unique key on particular mysql table field如何删除特定 mysql 表字段上的唯一键
【发布时间】:2016-10-19 09:08:37
【问题描述】:

我在两个字段用户名和电子邮件中分配了唯一键。我已经执行了这个查询。

ALTER TABLE goipmonl_users DROP INDEX username;

DROP INDEX username ON goipmonl_users

显示错误。那么如何从所选字段中删除唯一键。

#1091 - Can't DROP 'username'; check that column/key exists.

我的表中有用户名、电子邮件列。

【问题讨论】:

  • 使用图像是一种邪恶。尝试复制文本。
  • 正确的语法是第二种:DROP INDEX index_name ON tbl_name。您应该为索引使用正确的名称。

标签: mysql phpmyadmin


【解决方案1】:

请找到使用 phpMyAdmin 从表中删除唯一索引的屏幕截图

1- 选择所需的数据库,

2-然后选择需要的表,

3-点击结构标签,选择表格顶部的“关系视图”选项,

4- 最后是页面底部的索引选项。

【讨论】:

    【解决方案2】:

    您可以使用以下命令来查找表的索引列表。从中获取唯一索引的名称。

    SHOW INDEX FROM tbl_name
    

    然后使用下面的删除该索引

    ALTER TABLE tbl_name DROP INDEX unique_constraint_name;
    

    【讨论】:

      【解决方案3】:
      ALTER TABLE [table name] DROP INDEX [unique key constraint name];
      

      请仔细检查您的唯一键约束名称,使用此命令检查:

      select distinct CONSTRAINT_NAME
      from information_schema.TABLE_CONSTRAINTS
      where table_name = [tablename] and constraint_type = 'UNIQUE';
      

      【讨论】:

        【解决方案4】:

        你可以简单地做这样的事情:

        ```
        ALTER TABLE goipmonl_users DROP INDEX goipmonl_users_username_unique;
        ```
        

        也就是说,你在表名前加上一个下划线,然后是约束所在的表列名,然后是下划线,最后是唯一的索引/约束名

        希望它能帮助可能再次遇到此问题的其他人

        【讨论】:

          猜你喜欢
          • 2012-02-28
          • 2020-12-09
          • 2011-08-10
          • 1970-01-01
          • 2023-02-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多