【发布时间】:2013-12-07 21:38:32
【问题描述】:
我们正在从 Oracle 迁移到 PostgreSQL Enterprise DB,并且我们有一个接受类表结构的存储过程。我们将 STRUCT 与 Oracle 一起使用,效果非常好。现在该表在 PostgreSQL 中配置为包含其他 UDT 表的 UDT,并且在从 PostgreSQL 层调用时它可以工作。
我找不到有关如何使用 PostgreSQL JDBC 驱动程序将复合类型作为复合类型集合或复合类型数组传递的适当支持或文档。
我能够通过传递我的 PGobject 实现来调用该过程。
我的getValue() 方法将对象数据转换为以下格式的字符串:
{row(key,1596156006),row(dataHeader2TDataHeader,2782),row(identifier01,20373833), ...}
但我从 PostgreSQL 收到错误“格式错误的数组文字”。
PostgreSQL 版本为 9.3.1,JDK 1.6,JBoss 3.2.8
【问题讨论】:
-
key、dataHeader2TDataHeader、identifier01都应该是列名吗?如果是这样,他们就在错误的地方。如果没有,至少应该引用它们。
标签: java postgresql jdbc jboss composite-types