>
> Lo intente de esa forma y me da el siguiente error:
>
> ERROR: syntax error at or near "("
>
> refieriendose al parentesis luego del AS
>
>
No me di cuenta de que tu función estaba en sql, te dejo como hacerlo con
plpgsql:

create or repplace function consultar_datosgrales() returns setof record as
$BODY$
declare
    rec record;
begin
    for rec in SELECT* FROM clientes loop
       return next rec;
    end loop;
    return;
end;
$BODY$
LANGUAGE 'plpgsql' IMMUTABLE;

y para llamarlo desde tu aplicación seria:

postg...@test[localhost]=# select * from consultar_datosgrales( ) as
(idcliente int,nombre text, appaterno text, apmaterno text);
 idcliente | nombre | appaterno | apmaterno
-----------+--------+-----------+-----------
         1 | Diego  | Juarez    | Pérez
         2 | Ana    | Zavala    | Torres
         3 | Jose   | Matias    | López
         4 | César  | Rios      | Ocaña
         5 | Luis   | Ramos     | Citalan
         6 | Miguel | Estrada   | Barrios
         7 | a      | b         | c
(7 filas)

Responder a