Re: Bug? Reading items of array of composite a type
От | Daniel Dekany |
---|---|
Тема | Re: Bug? Reading items of array of composite a type |
Дата | |
Msg-id | 1359540791.20100920202348@freemail.hu обсуждение исходный текст |
Ответ на | Bug? Reading items of array of composite a type (Daniel Dekany <ddekany@freemail.hu>) |
Список | pgsql-jdbc |
Nope... no bug here. Array items has two "columns": an index and the value, and the index happened to be the same as the first value which led to the misunderstanding here. Monday, September 20, 2010, 12:55:55 PM, Daniel Dekany wrote: > (Sorry for this is a duplicate of > http://pgfoundry.org/tracker/index.php?func=detail&aid=1010898&group_id=1000224&atid=854 > but now I guess it's unused and you expect reports here?) > > The items of an array of composite items are returned so that the > composite values will only have their first field returned correctly, > the second field will be a PGObject that represents the whole > composite value, and there will not be more fields. > > Example: > > ResultSet rs = con.createStatement().executeQuery( > "SELECT ARRAY[ROW(1,2,3)::some_composite_type]"); > while (rs.next()) { > ResultSet arrayRs = rs.getArray(1).getResultSet(); > while (arrayRs.next()) { > assert(arrayRs.getObject(1), 1); // Passes > assert(arrayRs.getObject(2), 2); // Fails, it's PGObject "(1,2,3)" > assert(arrayRs.getObject(3), 3); // Exception: there's only 2 columns > } > } > > This same issue doesn't appear if the composite value is not an item of an array. > > Versions: > postgresql-8.4-702.jdbc4.jar and postgresql-9.0dev-800.jdbc4.jar > PostgreSQL 8.3.11 (Win32) > Java 1.6.0_20-b02 > > Working demonstration code: > > http://pgfoundry.org/tracker/download.php/1000224/854/1010898/547/PgJDBCBugDemo.java > > -- > Best regards, > Daniel Dekany > > -- Best regards, Daniel Dekany
В списке pgsql-jdbc по дате отправления: