SQL UNIQUE
在 SQL 中,UNIQUE 约束用于确保某列或列组合中的值在表中是唯一的。这意味着在这些列中,任何两行都不能具有相同的值。以下是使用 UNIQUE 约束的一些示例和用法:
创建表时定义 UNIQUE 约束
CREATE TABLE teachers ( teacher_id INT UNIQUE, teacher_name VARCHAR(50) UNIQUE, mobile VARCHAR(20) UNIQUE );
参数说明
teacher_id INT UNIQUE 确保了 teacher_id 列中的每个值都是唯一的,可以作为主键使用
teacher_name VARCHAR(50) UNIQUE 确保了 student_name 列中的每个值都是唯一的
mobile VARCHAR(100) UNIQUE 确保了 email 列中的每个值都是唯一的,通常用作唯一标识符
添加 UNIQUE 约束到现有表的列
ALTER TABLE teachers ADD CONSTRAINT unique_mobile UNIQUE (mobile);
这条语句将在 teachers 表上创建一个新的 UNIQUE 约束,确保 mobile 列中的每个值都是唯一的。
组合列上的 UNIQUE 约束
CREATE TABLE teachers( teacher_id INT, teaher_name VARCHAR(50), age INT, mobile VARCHAR(20), UNIQUE (teacher_id, mobile) );
在这个示例中:UNIQUE (teacher_id, mobile) 确保了(teacher_id, mobile)组合在teachers表中的每一行都是唯一的,即同一个teacher_id 和 teacher_id 组合最多出现一条记录。
注意事项:
UNIQU E约束可以单独应用于一个列或多个列的组合。
如果在某列或组合上定义了 UNIQUE 约束,那么这些列中的任何一列都不能包含重复的值,但可以包含NULL值(因为NULL不等于任何值,包括它本身)。
UNIQUE 约束通常用于确保数据库表中某些数据列的唯一性,例如主键或唯一标识符。
使用 UNIQUE 约束有助于维护数据的完整性和准确性,特别是在要求某些值唯一的情况下,例如用户的邮箱地址或订单号码。