gpt4 book ai didi

javascript - Node.js MySQL 更新记录

转载 作者:行者123 更新时间:2023-11-29 19:08:42 25 4
gpt4 key购买 nike

我正在从 API 捕获数据,将其放入数组 ([arr1]) 中,并使用 node-mysql 查询我的数据库并向其中插入数据。

推送新记录时工作正常,如下所示:

    var arr1 = response.data.map(function(item) {
return [item.employeeDetails.id, item.employeeDetails.personalDetails.firstName, item.employeeDetails.personalDetails.lastName, item.employeeDetails.personalDetails.emailAddress];
});

var query = connection.query('INSERT IGNORE INTO employees(pk_userId, firstName, lastName, emailAddress) VALUES ?', [arr1],
function(error, results, fields) {
if (error) console.log(error);
else {
console.log("Imported=");
}
});

我正在尝试添加第二个查询,以更新更改的记录。我一直在阅读教程和文档,但仍然遇到问题。以下是我按照在线说明进行尝试的结果:

var query2 = connection.query('UPDATE employees SET ? WHERE ?', [arr1],
function(err, rows) {
if (err)
console.log("Error Updating ", err);
});

所以,我使用的是从 API 获得的相同的 [arr1] 数组,但是我对如何告诉 MySQL 寻找要更新的记录有点迷失。

任何建议或指导将不胜感激。

最佳答案

您应该设置占位符“?”使用逗号分隔语法。

var query2 = connection.query('UPDATE employees SET ? WHERE ?', [var1, var2],
function(err, rows) {
if (err)
console.log("Error Updating ", err);
});

这会将 var1 放入第一个 '?'和 var2 到第二个'?'。

关于javascript - Node.js MySQL 更新记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43267064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com