Lo mismo creia yo hasta que vi que postgresql tiene esa especial habilidad de devolver el valor insertado usando la palabra clave "returning". Acá lo que veo mal es la asignación
>________________________________ > De: Juan <smalltalker.marc...@gmail.com> >Para: Marco Vinicio Jimenez Rojas <vinici...@gmail.com> >CC: Lista de Postgres <pgsql-es-ayuda@postgresql.org> >Enviado: miércoles 7 de diciembre de 2011 16:22 >Asunto: Re: [pgsql-es-ayuda] error en funcion > > >Que queres devolver? el insert que sepa no devuelve nada ??? nada util >tal vez setee algun flag de success u ok pero no creo q nada mas . >salu2 >mdc > > >2011/12/7 Marco Vinicio Jimenez Rojas <vinici...@gmail.com> > >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 >> > > >