我使用了极好的插件node-postgres,https://github.com/brianc/node-postgres用node-postgres更新数据的更简单的方法是什么?
我有这个更新休息调用。我的桌子上有大约30列。有没有更简单的方法来更新这些呢?
/*
Post /api/project/products/:pr_id HTTP/1.1
*/
exports.updateProduct = function(req, res){
pg.connect(cs, function(err, client, done) {
var query = "UPDATE products SET pr_title = ($1), pr_usercode = ($2) WHERE pr_id=($3)";
client.query(query, [req.body.pr_title, req.body.pr_usercode, req.params.pr_id], function(err, result) {
if (handleErr(err, done)) return;
done();
sendResponse(res, result.rows[0]);
})
});
};
我在这里只有三列。当我编写全部30列时,这将是混乱和难以维护。必须通过简单的一行来更新req.body中的所有列?
任何想法?
请记住,'id'在'updateProductByID'应改为一个参数值。使用'i + 2'代替'i + 1',然后将产品ID值不转换为'colValues',以确保不会通过插入恶意标识来执行SQL注入。 – dimiguel
filter函数返回布尔表达式,而不是值。你应该用'map'替换'filter',这是正确的函数返回值 –
@NirO。良好的捕获 - 这是写成伪代码,并没有实际执行。将更新。 – srquinn