我正在使用表将某些ID转换为其他ID,并且相反。SQL上的自动增量字段不是主键
+--------+-----------------------------------------------+
| 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 |
+--------+-----------+
添加一个唯一索引上已经尝试过列 –
。由于字段'userId'会自动增加,所以'(userId,visitorId)'集合不会是唯一的 – dinigo
只有'visitorId'列 –