除了 ALTER TABLE 语句之外,哪个语句可用于将 UNIQUE 约束应用于现有 MySQL 表的字段?
mysqlmysqli database
CREATE UNIQUE INDEX 语句也可用于将 UNIQUE 约束应用于现有 MySQL 表的字段。其语法如下 −
CREATE UNIQUE INDEX index_name ON table_name(Column_name);
示例
假设我们有以下名为"Test5"的表,并且我们想将 UNIQUE 约束添加到列"ID",那么可以借助 CREATE UNIQUE INDEX 命令完成,如下所示 −
mysql> DESCRIBE TEST5; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID | int(11) | YES | | NULL | | | Name | varchar(20) | YES| | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.04 sec) mysql> CREATE UNIQUE INDEX ID_UNQ ON TEST5(ID); Query OK, 0 rows affected (0.20 sec) Records: 0 Duplicates: 0 Warnings: 0 mysql> DESCRIBE test5; +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | ID | int(11) | YES | UNI | NULL | | | Name | varchar(20) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+ 2 rows in set (0.04 sec)
从上述查询的结果集中可以看出,列 ID 具有 UNIQUE 约束。