我们如何检查由MySQL表上的UNIQUE约束创建的索引?

SHOW INDEX语句用于检查由MySQL表上的UNIQUE约束创建的索引。

语法

SHOW INDEX from table_name;

示例

假设我们有表“ empl”,它对列“ empno”具有唯一约束。

mysql> describe empl;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| empno  | int(11)     | YES  | UNI | NULL    |       |
| F_name | varchar(20) | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
2 rows in set (0.23 sec)

现在我们知道UNIQUE约束创建了可以从以下查询中检查的索引-

mysql> Show Index from empl\G
*************************** 1. row ***************************
       Table: empl
   Non_unique: 0
     Key_name: empno
 Seq_in_index: 1
  Column_name: empno
    Collation: A
  Cardinality: 0
     Sub_part: NULL
       Packed: NULL
         Null: YES
   Index_type: BTREE
      Comment:
Index_comment:
1 row in set (0.02 sec)

以上结果集中的 “ key_name”显示索引的名称,“ column_name”是已添加此索引的列的名称。