Re: how to create an object of java.sql.Array

From: Oliver Jowett <oliver(at)opencloud(dot)com>
To: jessica xingzc_he <xingzc_he(at)hotmail(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: how to create an object of java.sql.Array
Date: 2004-11-18 22:22:37
Message-ID: 419D20AD.8090507@opencloud.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

jessica xingzc_he wrote:

> support the data type of a column is int[], i can use
> ResultSet.updateArray(int, Array) to update it, right? My question is
> how to create an instance of java.sql.Array to pass in updateArray?

The driver does not really support setArray() / updateArray() for
arbitary Array implementations. I had a patch to fix this ages ago but
it has rotted since then, and was never really the right way to do it
anyway.

You can provide your own implementation of Array and it should work so
long as:

- it implements Array.getBaseTypeName(), returning the underlying
element type name ("int" in your case).
- it implements Array.toString(), returning an array constant formatted
as the postgresql backend expects (e.g. "{1,2,3}").

> BTW, does 7.4.x postgresql jdbc driver support RowSet?

As I understand it, RowSet isn't meant to be implemented by drivers, it
is a layer that sits on top of the driver. I don't know how well
implementations of RowSet work with the current driver.

-O

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message jessica xingzc_he 2004-11-18 22:39:22 deleteRow or updateRow after insertRow
Previous Message jessica xingzc_he 2004-11-18 22:00:21 how to create an object of java.sql.Array