Re: Varibbles %type en Procedimeintos Almacenados para Postgres

From: Fernando Hevia <fhevia(at)gmail(dot)com>
To: "Miguel A(dot) Marquina Balta" <angelmarqui(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Varibbles %type en Procedimeintos Almacenados para Postgres
Date: 2012-11-30 22:47:09
Message-ID: CAGYT1XTs7H8dO9yLZv=WMybNaJ407q76A7aMiY3ibu1XbCba7g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

2012/11/30 Miguel A. Marquina Balta <angelmarqui(at)gmail(dot)com>

> Homa amigos ..
>
>
> Mi consultar a la comunicdad es sobre las variable %type estoy armando un
> procedimiento almacenada y quiero enviar como paramero varios valoeres pero
> que ellos sean de tipo %type , bueno al ejecutar ello
> el pgadmin no me esta aceptando desde ya pido que si algun miembreo de la
> comunidad trabaja o ha trabajado con variable %type en algun store
> procedure o function porfavor haga llegar su comentario o ejemplo
> si es que lo hubiera.. muchas gracias..
>

No estoy seguro de haberte comprendido pero arriesgo con un ejemplo a ver
si es lo que buscas:

Dada una tabla:
operadores (
cod_oper integer,
nom_oper text );

INSERT into operadores values (1, 'operador 1');

CREATE OR REPLACE FUNCTION prueba1(p1 operadores.cod_oper%TYPE)
RETURNS TEXT AS
$BODY$

DECLARE
v_operador operadores.nom_oper%TYPE;

BEGIN

raise notice 'Parametro: %', p1;

select nom_oper into v_operador from operadores where cod_oper = p1;

raise notice 'Operador: %', v_operador;

RETURN v_operador;
END;
$BODY$
LANGUAGE plpgsql STABLE
COST 100;
ALTER FUNCTION prueba1(operadores.cod_oper%TYPE)
OWNER TO postgres;

select prueba1(1); -- devolverá "operador 1".

Ojo que al grabar la función Postgres hará la conversión del %type al tipo
de dato que corresponda. Un integer en este caso. Al leer la función verás
que el parámetro es de tipo integer.
Por lo tanto, si conoces el tipo de dato no tiene mayor sentido usar %type
en el parámetro ya que no persistirá.

Espero haya sido lo que buscabas.

Saludos,
Fernando.

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Edwin Quijada 2012-12-01 15:14:44 Division en SQL
Previous Message Miguel A. Marquina Balta 2012-11-30 21:08:49 Varibbles %type en Procedimeintos Almacenados para Postgres