/* Gostei da dica da store function exclusao de JotaComm Baseado nas mesma function incrementei algumas funcionalidades. */
DROP FUNCTION IF EXISTS public.exclusao(esquema_tabelax VARCHAR(255), campox VARCHAR(255), idx INTEGER); CREATE OR REPLACE FUNCTION public.exclusao(esquema_tabelax VARCHAR(255), campox VARCHAR(255), idx INTEGER) RETURNS BOOLEAN AS $$ DECLARE ds_comando TEXT; deletado BIGINT; BEGIN IF (esquema_tabelax IS NULL) THEN RAISE EXCEPTION 'ESQUEMA TABELA COM VALOR NULO!'; -- caso o parametro venha nulo END IF; IF (campox IS NULL) THEN RAISE EXCEPTION 'CAMPO COM VALOR NULO!'; -- caso o parametro venha nulo END IF; IF (idx IS NULL) THEN RAISE EXCEPTION 'ID COM VALOR NULO!'; -- caso o parametro venha nulo END IF; ds_comando := 'DELETE FROM ' || esquema_tabelax || ' WHERE ' || campox || '=' || idx; EXECUTE ds_comando; GET DIAGNOSTICS deletado = ROW_COUNT; IF deletado > 0 THEN RAISE NOTICE '%', ds_comando; RAISE NOTICE 'Total de registro(s) deletado(s): %',deletado; RETURN TRUE; END IF; RAISE NOTICE '%', ds_comando; RAISE NOTICE 'Total de registro(s) deletado(s): %',deletado; RAISE NOTICE 'O registro % não foi encontrado. NADA FOI DELETADO!!.',idx; RETURN FALSE; END; $$ LANGUAGE 'plpgsql' RETURNS NULL ON NULL INPUT ; _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral