gpt4 book ai didi

postgresql - 2 个 Postgres 实例的不同结果

转载 作者:IT王子 更新时间:2023-10-29 01:07:53 24 4
gpt4 key购买 nike

我使用 Postgres App 在本地运行 Postgres 9.2.2 服务器使用 ssmode=disable。所有表都按应有的方式创建,SELECT 查询按预期工作。

当我在 Heroku 上创建一个 Postgres 实例时(根据 psqlssmode=require,服务器是 9.1.6),一切正常,除了查询不返回结果,而本地 postgres 实例返回结果。

具体查询是

SELECT * FROM "captcha" WHERE "cid" = $1 LIMIT $2

cid/$1character varying(20) 类型。

当通过 psql 连接到远程实例并手动执行查询时,行按预期返回。我只是不明白什么可能导致这种不同的行为。

主要嫌疑人是我使用的驱动程序 bmizerany/pq ,但是这种行为是否还有其他错误来源?

更新:

我用一个简单的查询试了一下,同样的结果:结果集中没有行

SELECT * FROM "captcha" WHERE "cid" = 'JQRPm6qRpYukXCiPUpHZ' LIMIT 1

更新 2:

它与 bytea 字段有关,以下片段说明了在这 2 个 PG 版本上执行时的问题 https://gist.github.com/eaigner/5004468

最佳答案

问题是,Heroku 使用非默认的 bytea_output。所以解决这个问题的方法是

SET bytea_output = 'hex';

运行查询之前

关于postgresql - 2 个 Postgres 实例的不同结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14992757/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com