From: | Jaime Casanova <systemguards(at)gmail(dot)com> |
---|---|
To: | Felipe Amezquita <felmarla(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: convertir un tipo de dato.. |
Date: | 2006-02-04 07:06:41 |
Message-ID: | c2d9e70e0602032306k5560f1e1hce014b1c6bc08ab@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On 2/3/06, Felipe Amezquita <felmarla(at)gmail(dot)com> wrote:
> que tal amigos la otra cuestion es la siguiente.
> resulta que estoy haciendo un update dinamico y declaro un valor de entrada
> varchar,pero cuando voy a introducir un valor varchar en un tipo numerico me
> sale que es de otro tipo como puedo hacer para convertir el dato en el tipo
> del campo. creo que con cast pero no me da..
> el problema es entre el campo y el valor,,
> la funcion es asi..
> actualizar_persona(in_per_codigo numeric, in_campo varchar, in_valor
> varchar)
>
> CREATE OR REPLACE FUNCTION actualizar_persona(in_per_codigo numeric,
> in_campo varchar, in_valor varchar)
> RETURNS "varchar" AS
> $BODY$
> declare
> cadena varchar;
> var_valor Varchar(100);
>
> begin
> var_valor := in_valor;
> if (in_campo = 'per_fecnac') and (in_valor = '01/01/1500') then
> var_valor := null;
> end if;
>
> if (in_campo = 'per_fecfall') and (in_valor = '01/01/1500') then
> var_valor := null;
> end if;
>
> cadena:='update persona set
> '||in_campo||'=initcap(lower('''||var_valor||''')) where per_codigo=
> '||in_per_codigo||'';
> execute cadena;
> return 1;
> end;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
y cual es el error?
--
Atentamente,
Jaime Casanova
(DBA: DataBase Aniquilator ;)
From | Date | Subject | |
---|---|---|---|
Next Message | Edwin Quijada | 2006-02-04 13:19:47 | RE: psql con windows y linux |
Previous Message | Alvaro Herrera | 2006-02-04 00:19:51 | Re: Iniciar postgres manualmente |