如果条件存在,我想更改存储过程。如果不满足条件,我想按原样保留存储过程,因此拖放/创建实际上不是一个选择。
试图将ALTER PROC的内容放入IF块对我来说引发了错误。有什么想法吗?
最佳答案
IF (condition)
EXEC ('ALTER PROC ...')
ALTER/CREATE PROC必须在批次中排在第一位,因此这是唯一的方法。除非你这样做
IF NOT (condition)
RAISERROR('abort connection with high severity', 20, 1)
GO
ALTER PROC ...
GO