我想创建一个修订控制系统,对修订为nr 1的新条目的查询将如下所示:
id和修订号组合在一起就是主键。
insert into contentfile (id, name, revision, active)
values ((select max(id) +1 from contentfile), 'name', 1, 1)这是否足够原子化,或者是否有可能生成的id和子查询将同时被该查询的另一个调用所选择?
提前谢谢。
发布于 2012-08-14 18:45:52
不要试图重新发明已经存在的东西。通过将自动增量选项添加到id字段来修改您的表,然后像这样插入记录:
INSERT INTO contentfile(name, revision, active) VALUES('name', 1, 1);id将由MySQL服务器自动递增。所有id值都将是唯一的。
https://stackoverflow.com/questions/11949763
复制相似问题