Re: funcion deveule recorset

From: Hensa <hensa22(at)yahoo(dot)es>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: funcion deveule recorset
Date: 2006-10-19 15:20:58
Message-ID: 20061019152058.16538.qmail@web30805.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Gracias por la respuesta, yo ya tengo implementada mi funcion que devuelve el cursor en postgres.Y usar Fetch all in X_cursor,
y si tengo conocimiento del manejo de cursores, por ese tema no se preocupen.

Mi problema es que cuando lo llamo desde visual basic mi recordset es llenado solamente con un campo y un registro, y el valor de ese campo es justamente
el nombre de referencia del cursor <unname portal 8> o algo asi.
Yo necesito que me devuelve todos los registros y no ese nombre <unname portal 8>.

Alguien puede ayudar.

minostro(at)sicet(dot)cl escribió: Hola Hensa:

Creo que lo primero es estudiar un poco sobre cursores, eso lo
puedes ver en la excelente documentacion de postgresql.

Aca te va un ejemplo con refcursor:

CREATE OR REPLACE FUNCTION busca_exalumno(datos refcursor, busuario
"varchar", bpassword "varchar")
RETURNS refcursor AS
$BODY$BEGIN
OPEN datos FOR select * from exalumno where usuario=busuario and
password=bpassword;
return datos;
END;$BODY$
LANGUAGE 'plpgsql' VOLATILE;
ALTER FUNCTION busca_exalumno(datos refcursor, busuario "varchar",
bpassword "varchar") OWNER TO minostro;

y para traer los datos en sql es como sigue:

select busca_exalumno('datos','minostro','1234');
fetch all in datos;

Esto es en sql no sé como será en VB, ya que nunca he programado en
ese lenguaje.

Este ejemplo lo aplique de la siguiente tabla:

CREATE TABLE exalumno
(
rut varchar(10) NOT NULL,
prom_ano numeric(4) NOT NULL,
usuario varchar(30) NOT NULL,
"password" varchar(30) NOT NULL,
nombre varchar(40) NOT NULL,
apellido varchar(40) NOT NULL,
telefono varchar(30),
dianac numeric(2),
mesnac varchar(10),
correo varchar(50) NOT NULL,
pais varchar(50),
ciudad varchar(50),
lugartrab varchar(100),
profesion varchar(100),
)
WITHOUT OIDS;
ALTER TABLE exalumno OWNER TO minostro;

espero te sirva, salu2!!

El 19/10/06, Hensa escribió:
> como debo desarrollar mi funcion en postgres para que me devuelve un cursor
> a mi aplicacion VB y el cursor se carge en un recordset en VB y este
> cargada con los datos y no con el nombre de referencia del cursor.
> gricias de antemano
>
>
> ---------------------------------
>
> LLama Gratis a cualquier PC del Mundo.
> Llamadas a fijos y móviles desde 1 céntimo por minuto.
> http://es.voice.yahoo.com
>

--
Milton Inostroza Aguilera

---------------------------(fin del mensaje)---------------------------
TIP 7: no olvides aumentar la configuración del "free space map"


---------------------------------

LLama Gratis a cualquier PC del Mundo.
Llamadas a fijos y móviles desde 1 céntimo por minuto.
http://es.voice.yahoo.com

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jose Maria Mencia Fernandez 2006-10-19 15:21:29 Ayuda con Outer Join en 3 tablas
Previous Message Karen Oliva 2006-10-19 15:14:50 data were house