对以下代码使用交易时,LAST_INSERT_ID()
是否存在不属于第一个插入的风险?也就是说,是否可以进行其他插入操作,例如INSERT INTO comments (comment) VALUES ('kthanksbuy');
之类的不同用户互动,然后会提供LAST_INSERT_ID()
评论ID而不是用户ID?
BEGIN;
INSERT INTO users (username, password)
VALUES('john', 'pass');
INSERT INTO profiles (userid, bio, homepage)
VALUES(LAST_INSERT_ID(),'I am a lumberjack, and I am ok!', 'http://www.stackoverflow.com');
COMMIT;
感谢。
答案 0 :(得分:0)
LAST_INSERT_ID()
- 最后一次INSERT的AUTOINCREMENT列的值。
或更广泛:LAST_INSERT_ID()
返回BIGINT UNSIGNED(64位)值,表示由于最近执行的INSERT语句而成功为AUTO_INCREMENT列插入的第一个自动生成的值。它来自official documentation。
绝对不是第一次插入...