【问题标题】:getting error "res.json is not a function" in knex JS mysql在 knex JS mysql 中出现错误“res.json 不是函数”
【发布时间】:2018-11-06 18:26:14
【问题描述】:

我正在尝试将运行 knex 查询后的响应转换为 json,以便我可以单独的结果

knex.raw("SELECT SUM(`someColumn`) FROM `collection`")
.then(res => res.json())

我记录了结果它看起来像这样

  [ RowDataPacket {
         'SUM(`someColumn`)': 23231 }
  ]

wOR 我如何获得直接的总结果?

【问题讨论】:

  • 您记录的结果看起来不像是一个有效的 javascript 对象,您确定这是 console.log(res) 的输出吗?

标签: mysql sql node.js knex.js


【解决方案1】:

knex.raw() 返回的结果是一些 javascript 对象,它取决于您使用的数据库方言/驱动程序。因此,您需要从数据库驱动程序中检查它如何返回对查询的响应。

如果您使用普通查询方法,knex 会自动从驱动程序的响应中提取结果数组。 MySQL提取代码在这里:https://github.com/tgriesser/knex/blob/master/src/dialects/mysql/index.js#L139

【讨论】:

    猜你喜欢
    • 2017-06-23
    • 2022-11-18
    • 1970-01-01
    • 2018-03-19
    • 2018-07-05
    • 2019-01-11
    • 1970-01-01
    • 2016-11-26
    相关资源
    最近更新 更多