读书人

SQLSERVER存储过程怎么先DROP再CREATE

发布时间: 2013-06-19 10:26:41 作者: rapoo

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

读书人网 >SQL Server

热点推荐