Mysql 简明教程
MySQL - Unique Key
Unique Key 在 MySQL 中,如果应用到数据库表格的某个域上,则不允许在该列中插入重复值,即它用于唯一标识表格中的一条记录。
通常,任何关系数据库都包含存储在多个表格中的大量信息,并且每个表格都保存着大量记录。当我们处理如此庞大的数据量时,就有可能发生冗余(重复记录)。SQL 键是处理此问题的方法。
这个唯一键充当主键约束的替代;因为唯一键和主键都确保了数据库表格中的列的唯一性。
Creating MySQL Unique Key
我们可以使用 UNIQUE 关键字在 MySQL 表格列上创建唯一键,并且它具有以下特征:
-
即使唯一键与表格中的主键类似,但它可以接受单个 NULL 值,这与主键不同。
-
它不能有重复的值。
-
它还可用作另一个表的外键。
-
一个表可以有多个唯一列。
Syntax
以下是在表中的列上创建唯一键约束的语法:
CREATE TABLE table_name(
column_name1 datatype UNIQUE,
column_name2 datatype,
...
);
如您所观察到的,我们只需在使用 CREATE TABLE 语句创建表格时,在所需列的名称后面指定关键字 UNIQUE 即可。
Creating Multiple Unique Keys
我们可以在单个 MySQL 表格中的列上创建一个或多个唯一键约束。当在多个字段中应用此约束时,就不能在这些字段中插入重复值。
Creating Unique Key on Existing Columns
我们可以使用 ALTER TABLE… ADD CONSTRAINT 语句,针对表格现有列添加唯一键约束。
Syntax
以下是针对表格现有列创建唯一键的语法:
ALTER TABLE table_name
ADD CONSTRAINT unique_key_name
UNIQUE (column_name);
Note - 其中 UNIQUE_KEY_NAME 是唯一键的名称。在创建唯一键时,可以不指定名称。此名称用于删除表格中某列的约束。