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类型。
根据我的调查,驱动程序将值插入为文本而不是整数。
答案 0 :(得分:1)
事实证明是postgres行为,而不是驱动程序。 我不得不使用显式强制转换来使我的查询起作用。