Re: IsDate en plpgsql

From: "Jaime Casanova" <systemguards(at)gmail(dot)com>
To: "Sistemas C(dot)M(dot)P(dot)" <sistemascmp(at)redynet4(dot)com(dot)ar>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: IsDate en plpgsql
Date: 2006-04-29 18:14:12
Message-ID: c2d9e70e0604291114u660677e5tb1c25d2f2c9503a7@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On 4/27/06, Sistemas C.M.P. <sistemascmp(at)redynet4(dot)com(dot)ar> wrote:
>
> Tengo una funcion que me pasaron hace poco para poder comprobar si una
> cadena de téxto corresponde o no a una fecha.
> Sucede que si la cadena es NULL me devuelve True como si fuera una fecha.
> Como yo no se nada de este lenguaje y tengo que resolverlo urgentemente les
> mando la funcion y y pido si alguien me podria indicar como corregirla para
> que funcione con campos Nulos.
>
> begin
> perform $1::date;
> return 1;
> exception when others then
> return 0;
> end
>

puedes hacer una de dos cosas:

create or replace isDate(text) returns int as $$
begin
perform $1::date;
return 1;
exception when others then
return 0;
end;
$$ language 'plpgsql' strict;

esto retornara NULL cada vez que pases como parametro un NULL

o puedes hacer

create or replace isDate(text) returns int as $$
begin
if $1 is null then
return 0;
end if;
perform $1::date;
return 1;
exception when others then
return 0;
end;
$$ language 'plpgsql';

--
Atentamente,
Jaime Casanova

"What they (MySQL) lose in usability, they gain back in benchmarks, and that's
all that matters: getting the wrong answer really fast."
Randal L. Schwartz

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fermín Bueno 2006-04-30 20:28:31 Fw: Algunas informaciones que como persona de tecnología puede interesarte
Previous Message Jaime Casanova 2006-04-29 17:33:59 Re: Sentencia Insert