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:
CREATE PROCEDURE myProc(param1)
...
CREATE PROCEDURE myProc(param1, param2)
...
Para excluir o segundo, você tem 2 opções:
O mais fácil:
DROP PROCEDURE myProc(param1, param2);
O difícil:
dbaccess DB -
select procname, procid, numargs from sysprocedures where procname like 'myProc';
procname myProc
procid 1
numargs 1
procname myProc
procid 2
**numargs 2**
UPDATE sysprocedures SET procname='myProcOLD' WHERE procid=2;
DROP PROCEDURE myProcOLD;
Mesmo que o primeiro método seja simples, na primeira vez em que fui chamado no meio da noite para esse mesmo problema, escolhi o segundo. Foi mal ...