使用 JDBC 的 Postgres UTF-8 clob
Postgres JDBC 驱动程序似乎无法正确处理 UTF-8 clob。当您检索 clob 时,字符不正确(您会得到非 ascii 字符的 ? 标记)。
据说这是一个已知问题:
- http://archives.postgresql.org/ pgsql-bugs/2010-09/msg00034.php
- https://jira.springsource。 org/browse/SPR-7520
- http://archives.org/browse/SPR-7520 postgresql.org/pgsql-jdbc/2011-02/msg00032.php
幸运的是,对于我的应用程序,我通常会避免使用 clob,因此我刚刚将 clob 字段变成了非常大的 varchar。
其他人如何处理这个限制?
Postgres JDBC driver seems to not handle UTF-8 clobs correctly. When you retrieve the clob the characters are not correct (you get ? marks for non ascii characters).
Supposedly this is a known issue:
- http://archives.postgresql.org/pgsql-bugs/2010-09/msg00034.php
- https://jira.springsource.org/browse/SPR-7520
- http://archives.postgresql.org/pgsql-jdbc/2011-02/msg00032.php
Luckily for my application I generally avoid clobs so the fields that were clobs I have just made into really big varchars.
How are other people dealing with this limitation?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将 @Type(type="org.hibernate.type.StringClobType") 添加到 hibernate 中的 clob 描述中为我解决了这个问题。
Adding @Type(type="org.hibernate.type.StringClobType") to the clob description in hibernate solves it for me.
块?您指的是
text
或varchar
,PostgreSQL 没有 clob 数据类型。 PostgreSQL JDBC 驱动程序没有这方面的问题,如果没有 UTF8 支持,它将毫无用处。在这里工作得很好。clob? You mean
text
orvarchar
, PostgreSQL doesn't have clob datatype. The PostgreSQL JDBC driver doesn't have problems with that, it would be useless without UTF8 support. It works fine over here.