我想,如果它的存在是为了删除存储过程,然后通过这样的方式来创建它:当我在IF语句中使用它时,为什么CREATE PROCEDURE语句失败?
IF OBJECT_ID('[dbo].[myStoredProc]') IS not NULL
DROP PROCEDURE dbo.myStoredProc
CREATE PROCEDURE [dbo].[myStoredProc]
(
@parameter1 BIT
) AS
IF @parameter1 = 1
BEGIN
....
但抱怨说:
“CREATE PROCEDURE必须是唯一的声明批次“
问题:我该如何解决我的脚本来解决这个问题?
工作!但为什么终止是必要的?我的意思是 – pencilCake 2012-02-07 16:33:13
@pencilCake背后的逻辑因为“CREATE PROCEDURE”语句必须是批处理中的第一条语句(且只有一条)。 – 2012-02-07 16:37:53
我想知道为什么MS创建了这个规则......反对什么? – pencilCake 2012-02-07 16:38:50