From: | Martin Marques <martin(dot)marques(at)2ndquadrant(dot)com> |
---|---|
To: | José Vicente Zahonero García <jovizaga(at)hotmail(dot)com>, "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Fallo en función |
Date: | 2019-05-31 11:24:16 |
Message-ID: | 6ae78cc6-a42d-69f0-85ce-711c656287eb@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
El 31/5/19 a las 08:10, José Vicente Zahonero García escribió:
> Hola, tengo esta función:
> CREATE OR REPLACE FUNCTION inserciones(trayecto varchar, tempo varchar, espacio numeric)
> returns void AS $$
>
> declare
>
> spaces integer;
> hora integer;
> minuto integer;
> segundo integer;
> resultado real;
> tiempo_en_minutos real;
> calorias real;
>
>
> begin
>
> spaces := espacio*1000;
spaces es entero, y espacio numerico. Aunque multipliques por 1000,
tener que hacer un cast a entero.
> hora := cast(substring(tempo from 1 for 2));
> minuto := cast(substring(tempo from 4 for 2));
> segundo := cast(substring(tempo from 7 for 2));
Estas usando mal la funcion cast. Imagino que la idea es hacer un cast a
entero.
https://www.postgresql.org/docs/current/sql-createcast.html
> hora := hora*3600;
> minuto := minuto*60> resultado := ((spaces/(hora+minuto+segundo))*3.6);
> tiempo_en_minutos := ((hora+minuto+segundo)/60);
> calorias := (70*0.21)*tiempo_en_minutos;
>
> insert into datos (recorrido,tiempo,distancia,calorias,kmh,fecha) values (trayecto,tempo,spaces,calorias,resultado,current_date);
>
> end;
> $$ language 'plpgsql';
> Al ejecutarla me da el error:
> Unterminated dollar quote started at position 0 in SQL $$ language 'plpgsql';. Expected terminating $$
Habrás pegado mal la funcion porque a mi no me da ese error. Si me da
error en los cast() de arriba en los que no estas especificando el tipo
al que debe convertirse el valor.
--
Martín Marqués http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | José Vicente Zahonero García | 2019-05-31 15:22:25 | Transformar un procedimiento Firebird a PostgreSQL |
Previous Message | Daymel Bonne | 2019-05-31 11:21:29 | Re: Fallo en función |