Boa noite!
Já se deparou com um issue de compilar alguma package com o caracter ‘&’ dentro do código? Isto geralmente não dá certo quando se quer compilar este objeto via SQLPLUS.
Quando você tenta compilar, ele interrompe a aplicação pois ele entende o ‘&’ como uma variável que precisa ser preenchida.
Vamos aos testes (Usando um select como exemplo):
– Ao rodar o select com o caracter, veja que ele pede que informe o valor:
SQL> Select '&1' from dual;
Enter value for 1:
Isto contido dentro de uma package pode atrapalhar a aplicação de objetos como packages, views, funcões, etc. Portanto, para que este problema não aconteça, realize um comando antes, denominado: SET DEFINE OFF.
Vamos aos testes novamente (Usando um select como exemplo):
– Agora ao rodar o select com o caracter, veja que ignora o ‘&’ como uma variável e segue normalmente:
SQL> SET DEFINE OFF
SQL> Select '&1' from dual;
'&
--
&1
Bom, fica esta dica para quem precisar!
Abraço,
Junio Vitor