mysql 唯一键
在数据库中,唯一键(Unique Key)是一种约束条件,用于确保表中的某一列或多列组合的数据具有唯一性。这意味着在这列或这些列中不能有两个相同的值。唯一键的主要目的是保证数据的完整性和准确性,防止重复记录的插入。
唯一键与主键(Primary Key)有一些相似之处,但也有几个重要的区别:
- 主键 必须是唯一的,并且不允许包含空值(NULL)。每个表只能有一个主键。
- 唯一键 也必须是唯一的,但它允许包含一个或多个空值(NULL)。一个表可以有多个唯一键。
创建唯一键的方法可以通过在创建表时直接定义,或者在表创建之后通过ALTER TABLE语句添加。以下是两个例子:
创建表时定义唯一键
sql
深色版本
CREATE TABLE example_table (
id INT PRIMARY KEY,
email VARCHAR(100) UNIQUE
);
在已存在的表上添加唯一键
sql
深色版本
ALTER TABLE example_table ADD CONSTRAINT unique_email UNIQUE (email);
在上面的例子中,email
字段被定义为唯一键,确保了每条记录的电子邮件地址都是唯一的。如果试图插入一条已经存在于表中的电子邮件地址,数据库将抛出一个错误,阻止重复记录的插入。