From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Leo Martin Orfei <orfeileo(at)yahoo(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: funcion que retorne un resultset en java |
Date: | 2004-09-06 18:21:14 |
Message-ID: | 20040906182114.GC9429@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Sat, Sep 04, 2004 at 08:04:59AM -0700, Leo Martin Orfei wrote:
> Tengo un problema con las funciones de postgresql.
> necesito hacer una funcion que me retorne un resulset
> y poder recorrerlo desde java.
> La funcion es bastante compleja pero el problema es
> devolver el resultset.
> supongamos la siguiente funcion:
Has probado una funcion que retorne SETOF RECORD en lugar de un cursor
abierto?
> CallableStatement cs = null;
> ResultSet rs = null;
> cs = con.prepareCall("{ ? = call test()}");
> cs.registerOutParameter(1, java.sql.Types.OTHER);
> rs = cs.executeQuery();
> rs.next();
> System.out.println("nombre: " +rs.getString(1));
>
> pero me da el siguiente error:
>
> cursor "<unnamed portal 1>" does not exist
Los cursores solo viven durante una transaccion. Creo que JDBC tiene
comportamiento "autocommit" por omision. Trata deshabilitando
autocommit, o abre una transaccion explicitamente antes de llamar a la
funcion.
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"Si quieres ser creativo, aprende el arte de perder el tiempo"
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2004-09-06 18:33:05 | Re: Desemp |
Previous Message | Leonel Nunez | 2004-09-06 15:17:23 | Re: Obtener PostgreSql 8 y Como lo instalo en |