From: | Daymel Bonne <daymel(dot)bonne(at)2ndquadrant(dot)ec> |
---|---|
To: | José Vicente Zahonero García <jovizaga(at)hotmail(dot)com> |
Cc: | "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:21:29 |
Message-ID: | CAFHF9a4TEbN-Nm2ZcSBh700aTT9ryQc7CHYtM3S99zQpdZYbiQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola José:
El vie., 31 de may. de 2019 a la(s) 06:10, José Vicente Zahonero García (
jovizaga(at)hotmail(dot)com) 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;
> hora := cast(substring(tempo from 1 for 2));
> minuto := cast(substring(tempo from 4 for 2));
> segundo := cast(substring(tempo from 7 for 2));
> 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 $$
>
CREATE OR REPLACE FUNCTION public.inserciones(trayecto character varying,
tempo character varying, espacio numeric)
RETURNS void
LANGUAGE plpgsql
AS $function$
declare
spaces integer;
hora integer;
minuto integer;
segundo integer;
resultado real;
tiempo_en_minutos real;
calorias real;
begin
spaces := espacio*1000;
hora := cast(substring(tempo from 1 for 2) as integer);
minuto := cast(substring(tempo from 4 for 2) as integer);
segundo := cast(substring(tempo from 7 for 2) as integer);
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
$function$;
Saludos
From | Date | Subject | |
---|---|---|---|
Next Message | Martin Marques | 2019-05-31 11:24:16 | Re: Fallo en función |
Previous Message | José Vicente Zahonero García | 2019-05-31 11:10:00 | Fallo en función |