no debería ser:

viaje := insert into pago_viajes(transportista, fecha,monto_total,monto_vales, 
                     monto_pago, estado) values(transp, fecha,montoT,montoV, 
montoP, 
                       estado)returning idpago_viajes;

faltan los 2 puntos para la asignación del campo serial


>________________________________
> De: Marco Vinicio Jimenez Rojas <vinici...@gmail.com>
>Para: Lista de Postgres <pgsql-es-ayuda@postgresql.org> 
>Enviado: miércoles 7 de diciembre de 2011 16:20
>Asunto: [pgsql-es-ayuda] error en funcion
> 
>
>estoy aprendiendo a hacer funciones en postgres y esto no me funciona, le paso 
>el codigo de una funcion que recibe unos datos por parametro y quiero hacer un 
>insert, necesito que me ayuden a corregir la funcion o por lo menos saber 
>cuales son mis errores en esta funcion. gracias.
>
>create function ingresoPago(transportista integer, fecha date, montoT integer, 
>montoV integer,
>montoP integer, estado integer) returns integer as
>$BODY$
>DECLARE viaje integer = 0;
>begin
>         viaje = insert into pago_viajes(transportista, 
>fecha,monto_total,monto_vales, 
>                     monto_pago, estado) values(transp, fecha,montoT,montoV, 
>montoP, 
>                       estado)returning idpago_viajes;
>
>         return viaje;
>end;
>$BODY$
>language 'plpgsql';
>
>-- 
>
>-----------------------
>MVJR
>
>
>

Reply via email to