Hi all!
Attached is a patch that implements DatabaseMetaData.getIndexInfo()
for the JDBC2 driver. It also fixes a compile error under jikes by
casting characters in case statements of a byte-compared switch to
bytes.
A few notes on getIndexInfo():
1.) getArray() is not implemented for the postgresql JDBC driver yet,
so getIndexInfo() parses the pg_index.indkey field into separate
integers by hand.
2.) I have guessed that if pg_index.indisclustered is "false", then
the index is "hashed"; if not, line 2561 of the resultant class
should have "tableIndexOther" rather than "tableIndexHashed".
3.) I didn't know what sort sequence (if any) was used in indexes, so
I have set it to "null" (unknown) on line 2566.
4.) For "CARDINALITY" (number of unique index items, the 11th field of
the ResultSet returned by getIndexInfo()) I have used
pg_classes.reltuples.
I have tested this method, but hardly extensively. Is there a proper
regression test suite for the JDBC driver that tests can be added to?
William
--
William Webber william@peopleweb.net.au
Senior Programmer
PeopleWeb Australia http://www.peopleweb.com