<< getElementByID() getElementsByName() getElementsByTagName()的区别 | 首页 | 诊断 Java 代码: 诊断 Java 代码:孤线程(Orphaned Thread)错误模式 >>

迁移到Postgresql 数据库平台两个问题

Java开发Postgresql 数据库兼容应用的问题,与Oracle有一些不同:

Java类型映射数据库类型的不同,Oracle jdbc驱动程序处理Java String类型可正常映射到数据库的Numberic(Integer),而Postgres则会出错。

另外,则是使用hibernate时经常的錯誤: operator不存在:character varying = bytea问题,不要被这个描述误导了,并不是sql语句中character varying = bytea类型的比较,而是当使用hibernate使用参数绑定,而参数的值为null时,hibernate或者Postgresql驱动将这个参数映射为varbinary类型,Postgresql将varbinary认为为bytea类型:

2011-06-27 10:50:26,312 - WARN http-80-Processor23 [JDBCExceptionReporter] - SQL Error: 0, SQLState: 42883
2011-06-27 10:50:26,328 - ERROR http-80-Processor23 [JDBCExceptionReporter] - 錯誤: operator不存在:character varying = bytea
  建议:沒有符合指定之名稱和參數型別的運算子。您可能需要加入明確型別轉換。
  位置:1821

标签 :



发表评论 发送引用通报