如何处理ParameterizedQuery的错误?

时间:2019-09-04 07:11:24

标签: pg-promise

ParameterizedQuery的文档状态:

  

可以直接使用任何查询方法代替查询参数使用类型。而且它永远不会抛出任何错误,让查询方法拒绝它并带有ParameterizedQueryError。

这到底是什么意思?

  • 这是否意味着ParameterizedQuery的构造函数永远不会抛出错误,或者执行查询时永远不会抛出错误?
  • 我们应该如何处理错误?
    即我们什么时候应该扔ParameterizedQueryError

例如目前,我的功能如下:

async foo() {
    const pq = new ParameterizedQuery({
      text: 'Select ..',
      values: [repoRequest.limit],
      rowMode: 'array'
    });

    return transaction.manyOrNone(pq);
}

它似乎可以正常工作(与text-query参数相同)-当查询错误时,它还会在执行时引发错误。

1 个答案:

答案 0 :(得分:0)

  

这是否意味着ParameterizedQuery的构造函数从不抛出错误,还是在执行查询时不抛出错误?

是的。通过承诺拒绝,参数化查询中的错误以与库中所有查询相同的方式表现出来。

更新

为了避免混淆,我从API文档中删除了这句话。