golang / pq pq:operator不存在:bigint = text

时间:2017-03-16 10:50:48

标签: postgresql go pq

query := "WITH b(ColA, ColB) AS (VALUES ($1,$2)) UPDATE schema_name.table_name AS a SET ColC = b.ColB FROM b WHERE a.ColA = b.ColA AND a.ColB = b.ColB"
res, err := db.Exec(query, 1, 1)

上述代码失败,出现以下错误:

pq: operator does not exist: bigint = text

" COLC"是BIGINT类型。

根据我的调查,驱动程序将值插入为文本而不是整数。

问题:https://github.com/lib/pq/issues/582

1 个答案:

答案 0 :(得分:1)

事实证明是postgres行为,而不是驱动程序。 我不得不使用显式强制转换来使我的查询起作用。