Jump to content

Rendan

Members
  • Content count

    48
  • Joined

  • Last visited

Community Reputation

0 Comum

About Rendan

  1. Olá Sou iniciante e estava tentando criar uma função no postgres que os resultado fosse dinâmico de acordo com os parâmetros passados e assim a clausula where fosse construída testando os campos. Minha função da erro justamente na hora que passa a string do select para ser executada. A FUNÇÃO: CREATE OR REPLACE FUNCTION public.get_auditoria( vcpf character varying DEFAULT NULL, vlogin character varying DEFAULT NULL, vom character varying DEFAULT NULL, vidregistro bigint DEFAULT NULL, vmodulo character varying DEFAULT NULL, vacao text DEFAULT NULL, vip character varying DEFAULT NULL ) RETURNS SETOF record LANGUAGE 'plpgsql' COST 100 VOLATILE ROWS 1000 AS $BODY$ DECLARE txtsql character varying :='SELECT cpf FROM auditoria WHERE 1=1'; BEGIN IF vcpf <> NULL THEN txtsql := txtsql || ' AND cpf=vcpf'; END IF; RETURN QUERY (txtsql); RETURN; END; $BODY$; ALTER FUNCTION public.get_auditoria( character varying, character varying, character varying, bigint, character varying, text, character varying ) OWNER TO postgres; O ERRO: ERROR: ERRO: erro de sintaxe em ou próximo a "txtsql" LINE 28: RETURN QUERY (txtsql); ^ SQL state: 42601 Character: 487
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.