唯一索引(UNIQUE)

Exisi 2023-03-12 09:04:12
Categories: Tags:
  • 索引列的值必须唯一,允许有空值

 

  • 唯一索引是在表上一个或者多个字段组合建立的索引,一张表可以创建多个唯一索引。通过创建唯一索引,可以保证某一列的值具有唯一性

 

  • 使用唯一索引需能确保定义的列的数据完整性,以提高查询速度

示例

CREATE TABLE persons(

id INT(10),

UNIQUE(id),

 );

 

CREATE TABLE persons(

id INT(10) UNIQUE,

 );

 

Query OK, 0 rows affected (0.5 sec)

Records: 0  Duplicates: 0  Warnings: 0

示例

CREATE UNIQUE INDEX index_name

ON  persons(id);

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

示例

CREATE UNIQUE INDEX index_name

ON  persons(id, name);

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

示例

ALTER TABLE persons

ADD UNIQUE(id);

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

示例

ALTER TABLE persons

ADD UNIQUE(id, name);

 

Query OK, 0 rows affected (0.15 sec)

Records: 0  Duplicates: 0  Warnings: 0

  • 创建唯一性索引的目的不是为了提高访问速度,而是为了避免数据出现重复

 

  • 创建唯一索引的字段,都不能允许为 NULL,否则唯一约束不能保证数据的唯一,从而因为 NULL 值产生重复数据