Gracias Anthony.

El jue., 28 abr. 2016 a las 9:45, Anthony Sotolongo (<asotolo...@gmail.com>)
escribió:

> Hola nuevamente Alberto, como dice los textos y ejemplos del link que te
> envié (http://www.postgresql.org/docs/9.5/interactive/plpgsql-cursors.html),
> puedes usarlos para:
> 1- Retornar desde una función  que devuelve muchos registros,
> 2-Puede ser útil también para devolver más de un cursor, es decir puedes
> retornar dos o más resultados y usarlos desde tu APP, este es el ejemplo
> que viene en la doc del link que te envié:
>
> CREATE FUNCTION myfunc(refcursor, refcursor) RETURNS SETOF refcursor AS $$
> BEGIN
>     OPEN $1 FOR SELECT * FROM table_1;
>     RETURN NEXT $1;
>     OPEN $2 FOR SELECT * FROM table_2;
>     RETURN NEXT $2;
> END;
> $$ LANGUAGE plpgsql;
>
> -- need to be in a transaction to use cursors.
> BEGIN;
>
> SELECT * FROM myfunc('a', 'b');
>
> FETCH ALL FROM a;
> FETCH ALL FROM b;
> COMMIT;
>
>
> 3- También puede usarlo para paginar tus resultados desde PostgreSQL, y
> escribes los códigos desde tu APP ejemplo:
>
> BEGIN;-- defines tu cursorDECLARE micursor CURSOR FOR SELECT * FROM 
> mitabla;-- obtienes 20 tuplas
> FETCH 20 FROM micursor ;
> -- ...trabajas con elllas
>
> -- obtienes 20 tuplas mas
>
> FETCH 20 FROM micursor;
>
> -- ...trabajas con ellas
>
> -- haces lo que vayas hacer COMMIT;
>
>
>
> Al menos estos tres son los conozco y de una forma u otra los he 
> implementado, puede que hayan varios más, y otros usuarios de aquí los puedan 
> compartir
>
>
> saludos
>
>
> El 28 de abril de 2016, 11:05, Alberto Cuevas <betocuevas....@gmail.com>
> escribió:
>
>> Anthony gracias por la respuesta.
>>
>> Me serviria de mucho algún ejemplo en el cual debo usar un cursor, si no
>> es molestia estimados.
>>
>> Saludos.
>>
>> El mié., 27 abr. 2016 a las 12:49, Anthony Sotolongo (<
>> asotolo...@gmail.com>) escribió:
>>
>>> Hola Alberto, creo que el primer párrafo del siguiente link de la
>>> documentación indica el momento para usar cursores:
>>> http://www.postgresql.org/docs/9.5/interactive/plpgsql-cursors.html
>>>
>>> saludos
>>>
>>> On 27/04/16 14:21, Alberto Cuevas wrote:
>>> > Hola a todos, siempre he leido que se debe evitar usar cursores, que
>>> > es una mala practica y pues nunca los he usado en ningun motor de BD
>>> > en los que he trabajado (SQL Server, Oracle, PostgreSQL)
>>> >
>>> > Actualmente trabajo con Oracle y PostgreSQL, he encontrado mucha
>>> > similitud y ambas me gustan.
>>> >
>>> > Mi pregunta es en que momento usar un cursor.
>>> >
>>> > Disculpen si la pregunta es muy basica.
>>> >
>>> > Saludos.
>>>
>>>
>>> -
>>> Enviado a la lista de correo pgsql-es-ayuda (
>>> pgsql-es-ayuda@postgresql.org)
>>> Para cambiar tu suscripción:
>>> http://www.postgresql.org/mailpref/pgsql-es-ayuda
>>>
>>
>

Responder a