- Este tópico contém 7 respostas, 3 vozes e foi atualizado pela última vez 11 anos, 1 mês atrás por
Fábio Prado.
-
AutorPosts
-
3 de fevereiro de 2015 às 7:45 pm #107346
Andre Luiz
ParticipanteBoa tarde a todos
Estou executando no Oracle 10g XE o comando:
Update Usuario Set Ds_SenhaJava = rawtohex(dbms_obfuscation_toolkit.md5(input => utl_raw.cast_to_raw(Cd_Usuario)));
mas esta retornando a mensagem:
Update Usuario Set Ds_SenhaJava = rawtohex(dbms_obfuscation_toolkit.md5(input= utl_raw.cast_to_raw(Cd_Usuario)))
Erro na Linha de Comandos : 1 Coluna : 78
Relatório de erros –
Erro de SQL: ORA-00907: parêntese direito não encontrado
00907. 00000 – “missing right parenthesis”
*Cause:
*Action:este comando roda normalmente no Oracle 11g XE, gostaria de saber se alguem tem alguma dica de como resolver o erro acima.
pelo que vi, não esta faltando os pacotes e nem o parêntese3 de fevereiro de 2015 às 8:26 pm #107347rman
Participante@Andre Luiz
Verifique em qual SELECT ocorre erro:
SELECT UTL_RAW.CAST_TO_RAW(999) FROM DUAL;SELECT DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT => UTL_RAW.CAST_TO_RAW(999)) FROM DUAL;
SELECT RAWTOHEX(DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT => UTL_RAW.CAST_TO_RAW(999))) FROM DUAL;
3 de fevereiro de 2015 às 8:32 pm #107348Andre Luiz
ParticipanteRman, boa tarde
Agradeço pelo retorno, depois de executar os select’s estão retornando os resultados
SELECT UTL_RAW.CAST_TO_RAW(999) FROM DUAL;
393939SELECT DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT => UTL_RAW.CAST_TO_RAW(999)) FROM DUAL;
ORA-00907: parêntese direito não encontrado
00907. 00000 – “missing right parenthesis”
*Cause:
*Action:
Erro na linha: 3 Coluna: 43SELECT RAWTOHEX(DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT => UTL_RAW.CAST_TO_RAW(999))) FROM DUAL;
ORA-00907: parêntese direito não encontrado
00907. 00000 – “missing right parenthesis”
*Cause:
*Action:
Erro na linha: 11 Coluna: 52se voce puder me mostrar um caminho a seguir, agradeço muito, pois não estou conseguindo ver uma solução para este problema
3 de fevereiro de 2015 às 8:52 pm #107349rman
Participante@Andre Luiz
Utilize um usuário com permissão de DBA e poste o resultado:
SELECT *
FROM DBA_TAB_PRIVS
WHERE TABLE_NAME = 'DBMS_OBFUSCATION_TOOLKIT'
Creio que não existe permissão de EXECUTE para o pacote DBMS_OBFUSCATION_TOOLKIT.
3 de fevereiro de 2015 às 10:02 pm #107350Andre Luiz
Participante@Rman
pelo select ele tem a permissão
GRANTEE – OWNER – TABLE_NAME – GRANTOR – PRIVILEGE – GRANTABLE – HIERARCHY
resultado:
PUBLIC – SYS – DBMS_OBFUSCATION_TOOLKIT – SYS – EXECUTE – NO – NO3 de fevereiro de 2015 às 10:16 pm #107351rman
Participante@Andre Luiz
Realmente a permissão está OK.
Não tenho o Oracle Database 10g XE instalado aqui, mas testando no Oracle Database 11g não apresenta nenhum erro.
3 de fevereiro de 2015 às 10:35 pm #107352Andre Luiz
ParticipanteIsso mesmo, no 11g roda normalmente, mas preciso executar este comando em um 10g XE
agradeço pela atenção.
mas se ficar sabendo de algo que possa ajudar, me avise, por favor4 de fevereiro de 2015 às 5:35 pm #107357Fábio Prado
ParticipanteAndré,
O Oracle 10G não aceita passagem de parâmetros usando a notação nomeada em instruções SQL. Para funcionar no 10G use a notação posicional, como no exemplo abaixo:
Update Usuario Set Ds_SenhaJava = rawtohex(
dbms_obfuscation_toolkit.md5(utl_raw.cast_to_raw(Cd_Usuario))
);
OK?
[]s
-
AutorPosts
- Você deve fazer login para responder a este tópico.