【问题标题】:multiple table update sailsjs mysql多表更新sailsjs mysql
【发布时间】:2017-06-22 15:56:21
【问题描述】:

我正在开发这个小应用程序 nba_manager_simulator,但我一直在努力在团队和球员之间创建合同。 合同是一张桌子,另一支球队,第三名球员(合同有 1 支球队、1 名球员、2 个日期(开始、结束)和 1 个小数点(薪水)。

问题是:当我创建一个新合同时,它没有将合同 ID 添加到播放器。

我正在尝试通过这样的查询来添加它:

Player.query(update player set fk_contract = $1 where player.id = $2, [contract.id][contract.fk_player]...)

但它告诉我 $2 是未知的。

正确的“帆”方式是什么? 什么是“查询”方式? (我想了解更多关于 Sails 中的 SQL 查询)

谢谢!

【问题讨论】:

  • MySQL 查询使用 ? 作为占位符,而 PostgreSQL 查询使用 $1, $2Examples
  • 谢谢,我注意到了,但我不知道如何使用多个参数,我认为使用 $1, $2... 无论如何都可以。

标签: mysql sails.js


【解决方案1】:

我认为你需要在同一个数组中传递两个参数,而不是单独的,像这样:

let sql = 'update player set fk_contract = $1 where player.id = $2'
Player.query(sql, [contract.id, contract.fk_player]...)

【讨论】:

  • 好吧,我在这里犯了 3 个错误, :first 使用 $1 而不是 ?正如 Sangharsh 所指出的,第二个我使用“contract.fk_player.id”而不是简单的 fk_player,第三个,使用多个数组......现在它工作得很好。谢谢大家!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-01-13
  • 1970-01-01
  • 1970-01-01
  • 2017-09-05
  • 1970-01-01
  • 2013-06-24
  • 2014-05-08
相关资源
最近更新 更多