您的位置:首页 > 数据库 > SQL

PostgreSQL错误处理“operator does not exist: character varying = bytea at character”

2015-05-29 10:52 2391 查看
PostgreSQL的日志报如下的错误:

2015-05-26 15:34:42.324 CST:(49514):<14753>:[30287041] ERROR:  operator does not exist: character varying = bytea at character 704

2015-05-26 15:34:42.324 CST:(49514):<14753>:[30287041] HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.

2015-05-26 15:34:42.324 CST:(49514):<14753>:[30287041] STATEMENT: xxx

从给出的报错对应的SQL中可以定位到是哪个=子句,在网络上查找到对应的信息:

当使用hibernate使用参数绑定,而参数的值为null时,hibernate或者PostgreSQL驱动将这个参数映射为varbinary类型,PostgreSQL将varbinary认为为bytea类型

因此,在代码中特殊地处理值为null的情况,避免将null值传送给PostgreSQL即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  postgresql