Re: existen stored procedures?

From: Raúl Andrés Duque Murillo <ra_duque(at)yahoo(dot)com(dot)mx>
To: "keyser soze" <bajopalabra(dot)ar(at)gmail(dot)com>, "Lista - PostgreSQL" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: existen stored procedures?
Date: 2008-10-17 19:09:26
Message-ID: BCD73F24CA8E4E2F89B883C6798B2DE0@Principal
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

--------------------------------------------------
From: "keyser soze" <bajopalabra(dot)ar(at)gmail(dot)com>
Sent: Friday, October 17, 2008 4:29 PM
To: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] existen stored procedures?

> gracias silvio
>
> "Silvio Quadri" <silvioq(at)gmail(dot)com> escribió en el mensaje
> news:61dc71dc0810170645s62318062o6970021c43be20b9(at)mail(dot)gmail(dot)com(dot)(dot)(dot)
> 2008/10/17 keyser soze <bajopalabra(dot)ar(at)gmail(dot)com>
>
>> hola
>> soy nuevo en Postgres
>> vengo del ámbito de MS-SQL y Oracle
>> en ellos existen los Stored Procedures (Procedimientos Almacenados)
>> cuyas ventajas son:
>> 1) agrupar varias operaciones (Ins,Upd,Del) bajo un solo procedimiento
>> --en forma procedural, claro--
>> 2) "pre-compilar" ese procedimiento, es decir, no hace falta para el
>> motor
>> reconstruir el plan de ejecución
>>
>> por lo que estuve viendo, en Postgres solo puedo crear "funciones"
>> y si quiero que el lote devuelto sea indeterminado
>> debo retornar el tipo "record"
>>
>> pero más que nada quisiera saber cómo hacer para :
>> 1) devolver varios lotes a la vez
>> 2) o realizar por ej, varios inserts bajo un mismo procedimiento
>>
>>
>> apreciaré sus comentarios
>> muchas gracias
>>
>> atte,
>> KS
>>
>>
> Tenés lenguajes embebidos para tirar para arriba, entre ellos el plpgsql.
> Hasta podés escribir en C o generarte tu propio lenguaje.
>
> http://www.google.com/search?q=postgresql+stored+procedures
>
> http://www.postgresql.org/docs/8.3/interactive/xplang.html
>
> 1) No sé a qué te referís con "devolver varios lotes" ... un SP puede
> volver
> un set de datos, pero no varios "result sets"

Para aquellos que programamos en .NET es muy común el uso de DATASETs. Que
no es una "versión" desconectada de algo similar a una Base de datos (en
memoria) con sus tablas, PK, FK, etc... precisamente devolver varias tablas
en un SP encaja perfectamente con los datasets.

Uno de los problemas más complicados que he tenido para migrar SPs de MSSQL
a funciones de postgresql es que las funciones devuelven un único conjunto
de datos mientras que los SP de MSQL pueden devolver varios ... esto ha
generado modificar la lógica de los programas ;-(

Atentamente,

RAUL DUQUE
Bogotá, Colomia

> 2) Mirá los ejemplos de cada lenguaje.
>
>
> Silvio
>
>
>
> ---
> avast! Antivirus: Inbound message clean.
> Virus Database (VPS): 081016-0, 16/10/2008
> Tested on: 17/10/2008 11:29:16 a.m.
> avast! - copyright (c) 1988-2008 ALWIL Software.
> http://www.avast.com
>
>
>
>
>
> ---
> avast! Antivirus: Outbound message clean.
> Virus Database (VPS): 081016-0, 16/10/2008
> Tested on: 17/10/2008 11:29:50 a.m.
> avast! - copyright (c) 1988-2008 ALWIL Software.
> http://www.avast.com
>
>
>
>
> --
> TIP 4: No hagas 'kill -9' a postmaster
>
> __________ Information from ESET Smart Security, version of virus
> signature database 3533 (20081017) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.com
>
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Patricio Castro 2008-10-17 20:56:55 Re: para que sirven los esquemas??????
Previous Message Marcelino Guerrero (GMail) 2008-10-17 18:11:47 RE: El Server con Encoding UTF-8 y el Client_encoding en Latin??