美好的一天,
我愿意在Mysql中检索刚插入的行的id值。
我知道有mysqli_insert_id函数,但是:
我不想承担查询最高ID的风险,因为有很多查询,它可能会给我错误的...
(我的id列是自动增量)
答案 0 :(得分:96)
https://github.com/mysqljs/mysql#getting-the-id-of-an-inserted-row 完美地描述了解决方案:
connection.query('INSERT INTO posts SET ?', {title: 'test'}, function(err, result) {
if (err) throw err;
console.log(result.insertId);
});
编辑:拼写和在github中移动的repo,所以我改为当前链接。
答案 1 :(得分:-2)
我认为您误解了mysqli_insert_id()
方法的使用。必须在insert语句之后执行立即以获取最后插入的id。如果你直接使用我的MySQL
INSERT INTO(a,b)values(1,'test');
SELECT LAST_INSERT_ID(); -- this will display the last inserted id