SQLSERVER存储过程如何先DROP再CREATE
1.在存储过程中,打算先DROP再CREATE(重新编译用)
但是会出错,提示CREATE必须是最初的声明,要怎么写呢?
2.如果先DROP再CREATE,那么第一次执行的时候会不会出错。
就是在存储过程还不存在的时候去DROP会不会出错。
DROP PROCEDURE dbo.IF_Aggregate_Common_SP
CREATE PROCEDURE dbo.IF_Aggregate_Common_SP
.
.
.
END
------解决方案--------------------没有,drop 当然报错。可以先判断一下
------解决方案--------------------if object_id('dbo.IF_Aggregate_Common_SP','p') is not null
drop proc dbo.IF_Aggregate_Common_SP
go
create proc dbo.IF_Aggregate_Common_SP
xxxx
------解决方案--------------------你首先判断一下存储过程是否存在,存在则删除然后重建。
--判断是否存在存储过程的语句
if OBJECT_ID('procName') is not null drop proc procName go