我正在使用unixodbc驱动程序使用PostgreSQL,并且在尝试连接时,我收到错误。我只打印SQLError的pfNativeError的值,我得到一个'26'的值。
我已经查看了postgresql返回的错误代码,如下所示:http://www.postgresql.org/docs/8.1/static/errcodes-appendix.html#ERRCODES-TABLE
我想知道unixodbc是否在pfNativeError中返回上面链接中提到的错误代码的最后三个字符?如果这是真的,我假设唯一的可能是以下错误代码:
22026 STRING DATA LENGTH MISMATCH string_data_length_mismatch
如果我正在思考正确的方向,请告诉我。此外,这个问题我注意到只有当PostgreSQL有数百万行时,导致连接失败的查询才会尝试获取大量数据(10K)。有人可以说出问题可能发生的原因吗?
如果有任何帮助,我会得到szErrorMsg的以下值:
'26'是INTEGER,上面链接中提到的代码是HEX。十进制的26对应于十六进制的1A。不幸的是,它与上述文档中的任何内容都不对应。显然我没有想法!有人能告诉我不同的pfNativeError代码对应什么?