我使用表格将一些ID转换为其他ID,反之亦然。
+--------+-----------------------------------------------+
| userId | visitorId |
+--------+-----------------------------------------------+
| 1 | 015dc155838800b156253da37f0004078003b07000c48 |
| 2 | 015dbfdaeac50014c675298c726b04072003e06a00918 |
| 3 | 015dc26525ea00032eed79a4737d04092003a08a00978 |
+--------+-----------------------------------------------+
我使用此代码
CREATE TABLE Users (
userId int PRIMARY KEY AUTO_INCREMENT,
visitorId varchar(255),
);
简单,不是吗?我注册了每个新访问者,并为她生成了一个唯一的ID(userId
)。但是如何避免插入两次相同的visitorId
?
INSERT INTO Users (visitorId) VALUE ("1234"), ("1234"), ("1234")
+--------+-----------+
| userId | visitorId |
+--------+-----------+
| 1 | 1234 |
| 2 | 1234 |
| 3 | 1234 |
+--------+-----------+
答案 0 :(得分:5)
您需要visitorId
列上的唯一索引或约束:
alter table users add constraint unq_users_visitorId unique (visitorId);
答案 1 :(得分:4)
为列添加唯一
CREATE TABLE Users (
userId int PRIMARY KEY AUTO_INCREMENT,
visitorId varchar(255) UNIQUE,
);