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

mysqlmysqli database

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

语法

SHOW INDEX from table_name;

示例

假设我们有表 ‘empl’,该表对列 ‘empno’ 具有 UNIQUE 约束。

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’表示添加了此索引的列的名称。


相关文章