Re: funcion que retorne un resultset en java

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"

In response to

Browse pgsql-es-ayuda by date

  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