Re: Ayuda con función...

From: Gerardo Herzig <gherzig(at)fmed(dot)uba(dot)ar>
To: "Carlos T(dot) Groero Carmona" <ctonetg(at)gmail(dot)com>
Cc: Lista PostgreSql <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Ayuda con función...
Date: 2016-08-26 01:18:02
Message-ID: 481766693.807926.1472174282060.JavaMail.root@fmed.uba.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

1) Creo que tu profesor de "bases de datos" se quedo en Pascal.
2) Con que argumento estas invocando a esta funcion?

----- Mensaje original -----
> De: "Carlos T. Groero Carmona" <ctonetg(at)gmail(dot)com>
> Para: "Lista PostgreSql" <pgsql-es-ayuda(at)postgresql(dot)org>
> Enviados: Jueves, 25 de Agosto 2016 21:42:38
> Asunto: [pgsql-es-ayuda] Ayuda con función...
>
>
> Hola lista, ante todo gracias por cualquier comentario o
> sugerencia...
> Tengo esta función que tiene como parámetro de entrada un número, y
> luego devuelve ese número invertido...ejemplo...entro el 531 y tiene
> que devolver el 135, la función o ejercicio tiene como principal
> características que no puedo usar ningún tipo de función o tipo de
> dato para cadena...solo puedo usar tipos de datos y funciones
> numéricas...ya la hice...y cuando la debugeo me funciona bien, pero
> cuando la ejecuto me devuelve este error:
>
>
> ERROR: invalid input syntax for integer: "31.0000000000000000"
> CONTEXT: PL/pgSQL function some_user.reverse_order(integer) line 18
> at assignment
>
>
> la función es la siguiente...
>
>
>
> CREATE OR REPLACE FUNCTION some_user.reverse_order (
> var integer
> )
> RETURNS integer AS'
> DECLARE
> var_lgh integer ;
> var_div integer :=$1::integer;
> var_s integer :=1;
> result_e integer:=0;
> tf BOOLEAN := true;
> var_x integer;
> lth integer :=trunc(log($1))+1;
> -- variable_name datatype;
> BEGIN
> if $1>0 then
> BEGIN
> WHILE tf LOOP
> var_x:=lth-var_s;
> var_lgh:=div(var_div,power(10.0,var_x)); -- dividendo
> result_e:=result_e+var_lgh*power(10,var_s-1);
> var_div:=mod(var_div,power(10.0,var_x)); -- resto
> var_s:=var_s+1;
> IF var_s>lth THEN
> tf:=false;
> end if;
> END loop;
>
> END;
> ELSE
> IF $1=0 THEN
> RAISE NOTICE ''The entered parameter is zero, please provide a
> greater than zero value.'';
> ELSE
> RAISE EXCEPTION ''The entered parameter is less than zero, please
> provide a greater than zero value.'';
> end if;
> end if;
> return result_e::integer;
> END;
> 'LANGUAGE 'plpgsql'
> VOLATILE
> CALLED ON NULL INPUT
> SECURITY INVOKER
> COST 100;
>
>
> una vez más gracias por cualquier comentario...
>
>
> Carlos

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message José Hurtado 2016-08-26 08:50:23 Re: Estructura tipo diccionario o hashset
Previous Message Anthony Sotolongo 2016-08-26 01:14:51 Re: Ayuda con función...