Node.js mysql查询语法问题UPDATE WHERe

Node.js mysql查询语法问题UPDATE WHERe,第1张

Node.js mysql查询语法问题UPDATE WHERe

[ 注(加2016年4月29日): 这个答案已被接受,但事实证明,还有 就是 用合理的方式

SET?
。有关详细信息,请参阅同一页面上的Bala Clark的答案。 —ruakh ]


从的代码

Connection.prototype.query()
Connection.createQuery()
,很明显,你只能通过在一个 单一的 值对象。我看不到特殊
SET?
行为的代码在哪里定义-
它显然不在其中
SqlString.formatQuery()
-但是如果使用它
SqlString.objectToValues()
,那么我想没有办法将其与另一个代码一起使用
?

我认为最好的方法是放弃整洁的

SET ?
功能,然后编写以下任一功能:

connection.query('UPDATE users SET Name = ? WHERe UserID = ?', [name, userId])connection.query('UPDATE users SET Name = :Name WHERe UserID = :UserID',          {UserID: userId, Name: name})

但是,如果您真的想使用

SET ?
,我想您可以这样写:

connection.query('UPDATE users SET ? WHERe UserID = :UserID',          {UserID: userId, Name: name})

这将同时更新

UserID
Name
; 除非您有触发器,否则 应该没问题
,因为它会更新
UserID
为它已经拥有的值。但这有点令人不安,我不建议这样做。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5113258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存