From: | Doug Fields <dfields-postgresql(at)pexicom(dot)com> |
---|---|
To: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Empty arrays cause SQLExceptions when using Array.getArray |
Date: | 2002-02-21 00:12:14 |
Message-ID: | 5.1.0.14.2.20020220190907.03550840@mail.pexicom.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Hello, I have the following table and values:
=# \d array_test
Table "array_test"
Attribute
| Type | Modifier
-----------+-----------+-------------------------------------------------------
id | integer | not null default nextval('"array_test_id_seq"'::text)
first | integer[] |
second | integer[] |
number | integer |
Index: array_test_pkey
=# select * from array_test;
id | first | second | number
----+------------+-----------------------------------+--------
1 | {1,2,3} | {4,5,6} | 7
2 | {10,20,30} | {40,50,60} | 70
3 | {100,200} | {300,400,500,600} | 700
4 | {1000} | {2000,3000,4000,5000,6000} | 7000
5 | {} | {10000,2000,3000,4000,5000,6000} | 70000
6 | | {100000,2000,3000,4000,5000,6000} | 700000
7 | {9,8,7} | {6,5,4} | 8482
(7 rows)
When I am getting row 5, the ResultSet.getArray().getArray() call fails:
DbArrayTest.doTest: SQLException: Bad Integer
DbArrayTest.doTest: SQLState: null
DbArrayTest.doTest: VendorError: 0
Bad Integer
at org.postgresql.jdbc2.ResultSet.toInt(ResultSet.java:1481)
at org.postgresql.jdbc2.Array.getArray(Array.java:127)
at org.postgresql.jdbc2.Array.getArray(Array.java:54)
at com.pexicom.test.DbArrayTest.doTest(DbArrayTest.java:55)
Code snippet in question:
Array arrayObj;
int[] array;
while (rs.next()) {
System.out.println("\nColumn 1: " + rs.getInt(1));
arrayObj = rs.getArray(2);
if (arrayObj != null) {
array = (int[])arrayObj.getArray();
System.out.println("Column 2: " + arrayObj);
It fails at the arrayObj.getArray() call.
This shouldn't happen; it should return a zero-length array.
Thanks,
Doug
From | Date | Subject | |
---|---|---|---|
Next Message | Doug Fields | 2002-02-21 00:54:29 | [PATCH] Empty arrays cause SQLExceptions when using Array.getArray |
Previous Message | Doug Fields | 2002-02-21 00:04:01 | Setting array values in JDBC (Driver 7.2) |