Estou trabalhando no desenvolvimento de uma ferramenta de banco de dados oracle, desejo exibir uma mensagem de aviso ao executar a função. Por exemplo:
CREATE OR REPLACE FUNCTION FN_OEDS_CONVERTDATE2(
V_DATE DATE) RETURN VARCHAR2
IS
BEGIN
DECLARE
V_RETVALUE VARCHAR2(15) :='';
BEGIN
SELECT
CASE V_DATE
WHEN NULL THEN ''
ELSE TO_CHAR(V_DATE, 'DD-MM-YYYY')
END INTO V_RETVALUE FROM DUAL
RETURN V_RETVALUE;
END;
END;
/
A função acima será executada com sucesso, mas não passará por nenhuma mensagem de erro, mas seu status seria inválido, como passar a mensagem de aviso por fora em java.
As mensagens do compilador não são retornadas ao cliente por meio de getWarnings() na instrução ou na conexão.
Em vez disso, depois de identificar o aviso
Statement.getWarnings()
, você precisa analisar e recuperar os erros do compilador da exibiçãoALL_ERRORS
Algo como: