Я бы предположил что-то вроде:
IF EXISTS
(
SELECT *
FROM SYSPROCS
WHERE SPECIFIC_SCHEMA = ???
AND SPECIFIC_NAME = ???
AND ROUTINE_SCHEMA = ???
AND ROUTINE_NAME = ???
)
DROP PROCEDURE ???
Я не знаю, нужна ли вам на самом деле информация SPECIFIC_ * или нет, и я не знаю, как обрабатывать случаи, когда у вас есть две процедуры с одним и тем же именем, но разными сигнатурами вызовов, но, надеюсь, это даст вам право трек.