Java 将参数绑定为PostgreSQL数组

Java 将参数绑定为PostgreSQL数组,java,sql,postgresql,jdbc,Java,Sql,Postgresql,Jdbc,我试图绑定一个准备好的语句参数,它是一个“多维”PostgreSQL数组。下面是一个数组示例(列类型为numeric[]): 如何使用准备好的语句绑定这样的值?我试过: stmt.setObject(1, "{{1,10},{2,20}}", Types.ARRAY); 它不起作用: 无法将java.lang.String的实例强制转换为Types.ARRAY类型 有什么想法吗?试试这样(未经测试): 链接: 类似这样的东西:stmt.setObject(1,新整数[][{{1,10},

我试图绑定一个准备好的语句参数,它是一个“多维”PostgreSQL数组。下面是一个数组示例(列类型为
numeric[]
):

如何使用准备好的语句绑定这样的值?我试过:

stmt.setObject(1, "{{1,10},{2,20}}", Types.ARRAY);
它不起作用:

无法将java.lang.String的实例强制转换为Types.ARRAY类型

有什么想法吗?

试试这样(未经测试):

链接:


  • 类似这样的东西:
    stmt.setObject(1,新整数[][{{1,10},{2,20},Types.ARRAY)
    ?不起作用,我也尝试了BigDecimal[]]。
    stmt.setObject(1, "{{1,10},{2,20}}", Types.ARRAY);
    
                    ------------------ your connection
                    V
    Array inArray = conn.createArrayOf("integer", new Integer[][] {{1,10},{2,20}});
    stmt.setArray(1, inArray);