javascript - node.js & mysql - 如何获取最后插入的 ID?

标签 javascript mysql node.js lastinsertid

db.query("INSERT INTO `chat_entries`(`author`, `authorRank`, `receiver`, `timestamp`, `message`) VALUES (" + db.escape(GetUsername(connection)) + ", " + GetUserData(GetUsername(connection), "rank") + ", '-', " + Math.round(new Date().getTime() / 1000) + ", '" + db.escape(messageData.message) + "')", function(result, rows){
    console.log(result.insertId);
});

控制台告诉我:

Cannot read property 'insertId' of null

在我搜索解决方案后,我发现了此页面: https://github.com/mysqljs/mysql#getting-the-id-of-an-inserted-row

根据此文档,它必须有效。 我的错误在哪里? 提前致谢。

最佳答案

你需要更换

console.log(result.insertId); 

console.log(rows.insertId);

因为它是您传递给回调函数的变量。

关于javascript - node.js & mysql - 如何获取最后插入的 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38186555/

相关文章:

javascript - 使 div 可点击和可复制?

javascript - ReactJS - 为调度操作的函数创建一个单独的文件

MySQL 排行榜

javascript - Nodejs映射串口写入接收数据

javascript - 通过 AJAX 渲染 Jade 模板并尝试独立于 HTML 传递/访问数据

javascript - MS Dynamics 365 - Iframe - 访问 Xrm - 权限被拒绝

javascript - 如何在ajax中成功调用javascript函数?

c# - Visual Studio 表适配器配置向导无法解析 mysql 语句

c# - MySQL 实体注入(inject)

javascript - 是否可以使用 NodeMailer 将回复字段设置为抄送?