NullPointerException in ResultSetMetaData getColumnCount when using on a resultset from a stored function
| От | tomas.johansson@agent25.se (Tomas) |
|---|---|
| Тема | NullPointerException in ResultSetMetaData getColumnCount when using on a resultset from a stored function |
| Дата | |
| Msg-id | 2e107e13.0410180639.70aea0e0@posting.google.com обсуждение исходный текст |
| Ответы |
Re: NullPointerException in ResultSetMetaData getColumnCount
|
| Список | pgsql-jdbc |
How can you get metadata from a resultset that is returned from a stored function ? I have tried the code below with the latest "pg74.215.jdbc3.jar" at http://jdbc.postgresql.org/download.html but the invocation of metaData.getColumnCount()) below will lead to a NullPointerException: java.lang.NullPointerException at org.postgresql.jdbc2.AbstractJdbc2ResultSetMetaData.getColumnCount(AbstractJdbc2ResultSetMetaData.java:34) private void testCallable(Connection conn) throws Exception { CallableStatement call = conn.prepareCall("{ ? = call myfunction() }"); call.registerOutParameter(1, Types.OTHER); call.execute(); ResultSet results = (ResultSet) call.getObject(1); ResultSetMetaData metaData = results.getMetaData(); System.out.println("getColumnCount: " + metaData.getColumnCount()); results.close(); call.close(); } CREATE TABLE public.mytable ( mycolumn int4, mycolumn2 int4 ) CREATE OR REPLACE FUNCTION public.myfunction() RETURNS refcursor AS ' DECLARE ref refcursor; BEGIN OPEN ref FOR SELECT mycolumn, mycolumn2 FROM mytable; RETURN ref; END; ' LANGUAGE 'plpgsql'
В списке pgsql-jdbc по дате отправления: