5

我正在使用 SQLX 和 PQ 使用 PostGress 查询 SQL 数据库。我正在使用带有 bindvars 的 SQLX 中的函数 Select ,但 PQ 出现恐慌

pq:得到 1 个参数,但语句需要 0。

 query = `
    SELECT 
        count(*) AS count 
    FROM 
        ledger 
    WHERE 
        enterprise_id=($1)
 `
 var stat singleStat

 err = db.Select(&stat, query, enterpriseID)
4

1 回答 1

1

如果有人到了这里,我通过挖掘 pq 源代码找到了答案。要在 Crate 中使用准备好的参数,需要驱动程序在准备语句之前将参数以二进制形式发送;回答参数的类型。

为此,请将“binary_parameters=yes”添加到您的连接字符串中。喜欢:

“用户=箱子数据库名称=测试二进制参数=是”

于 2018-05-09T10:59:40.503 回答