您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

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

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

[ 这个答案已被接受,但事实证明,还有 就是 用合理的方式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})

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

MySQL 2022/1/1 18:13:38 有622人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶