虽然 auto_increment 可以确保每个新插入的条目都有独特的 ID,但它不能防止重复值的插入,因为自动增量列仅对同一表中的行进行唯一性检查。要防止重复条目,可以添加一个 UNIQUE 索引来保证特定列的唯一性。 例如,以下是一个具有自动递增ID和唯一用户名的示例表:
CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) UNIQUE ); 可以将 UNIQUE 索引应用于任何需要唯一值的列。
以下是插入操作:
INSERT INTO users (username) VALUES ('johndoe'); INSERT INTO users (username) VALUES ('janedoe'); INSERT INTO users (username) VALUES ('johndoe'); 第三个插入操作将失败,因为它尝试插入一个已经存在的值。