【发布时间】:2012-05-22 22:07:39
【问题描述】:
我的问题与Why does MySQL autoincrement increase on failed inserts? 相同,但与其增加我的id 字段,我宁愿只重写给我带来麻烦的INSERT 查询。假设我有一个包含两个字段的数据库,id 和username,其中id 是主键,username 是唯一键。我本质上是在寻找可以做到INSERT...IF NOT EXISTS 的语法。现在,我愿意
INSERT INTO `table`(`username`)
VALUES ('foo')
ON DUPLICATE KEY UPDATE `id`=`id`
我只有一个线程写入数据库,所以我不需要任何并发保护。有什么建议吗?
【问题讨论】:
-
为什么自动增量字段更新会出现这样的问题?
-
因为我想避免使用
HUGEINT作为密钥。
标签: mysql sql innodb auto-increment