Estou usando o Informix...
Não sei como fiz isso, mas existem dois procedimentos com o mesmo nome no meu banco de dados. Quando tento removê-los com um
DROP PROCEDURE myProc;
então eu recebo uma mensagem de erro
ERROR: Routine (add_adr_trigger_row) ambiguous - more than one
routine resolves to given signature.
Error Code: -9700
Como posso desistir dos procedimentos?
Isso acontece quando você tem 2 ou mais procedimentos, com o mesmo nome, mas com números diferentes de parâmetros de entrada.
Por exemplo, você criou 2 procedimentos:
Para excluir o segundo, você tem 2 opções:
O fácil:
O difícil:
Mesmo que o primeiro método seja extremamente simples, na primeira vez que fui chamado no meio da noite pelo mesmo problema, escolhi o segundo. Foi mal ...
Se você estiver ciente de que isso pode ser um problema no futuro, poderá criar seu procedimento com um nome ESPECÍFICO, que deve ser exclusivo em todos os procedimentos do banco de dados.
Se você não estiver ciente de que haverá um problema ao criar o procedimento, não poderá voltar oficialmente e adicionar um nome específico e terá um problema.
A atualização de
sysprocedures
na resposta selecionada só deve funcionar se o usuário estiver conectado comoinformix
(ou, no caso de um servidor privado, o proprietário do servidor).