我試圖批量編譯SSMS中的所有存儲過程。但只有第一個存儲過程被編譯,然後爲其他程序顯示「已經有一個對象... ...」「我把所有的程序保存在一個編輯器中,然後嘗試編譯[F5]程序,但得到錯誤。請建議如何批量編譯所有程序。批量編譯所有存儲過程
下面是示例什麼,我試圖做的:
USE [TESTDB]
IF OBJECTPROPERTY(object_id('[dbo].[p_get_Codes]'), N'IsProcedure') = 1
DROP PROCEDURE [dbo].[p_get_Codes]
GO
/****** Object: StoredProcedure [dbo].[p_get_Codes] Script Date: 8/8/2015 8:56:32 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[p_get_Codes]
as
begin
SET NOCOUNT ON;
begin
--- my stored procedure
end
SET NOCOUNT OFF;
end;
IF OBJECTPROPERTY(object_id('[dbo].[p_get_retailers]'), N'IsProcedure') = 1
DROP PROCEDURE [dbo].[p_get_retailers]
GO
/****** Object: StoredProcedure [dbo].[p_get_retailers] Script Date: 8/8/2015 8:58:43 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[p_get_retailers]
as
begin
SET NOCOUNT ON;
begin
--- my stored procedure
end
SET NOCOUNT OFF;
end;
IF OBJECTPROPERTY(object_id('[dbo].[p_get_Buyers]'), N'IsProcedure') = 1
DROP PROCEDURE [dbo].[p_get_Buyers]
GO
/****** Object: StoredProcedure [dbo].[p_get_Buyers] Script Date: 8/8/2015 10:17:53 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[p_get_Buyers]
as
begin
SET NOCOUNT ON;
begin
--- my stored procedure
end
SET NOCOUNT OFF;
end;
IF OBJECTPROPERTY(object_id('[dbo].[p_get_seller_groups]'), N'IsProcedure') = 1
DROP PROCEDURE [dbo].[p_get_seller_groups]
GO
/****** Object: StoredProcedure [dbo].[p_get_seller_groups] Script Date: 8/8/2015 10:23:39 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create proc [dbo].[p_get_seller_groups]
as
begin
SET NOCOUNT ON;
begin
--- my stored procedure
end
SET NOCOUNT OFF;
end;
謝謝!
你試圖解析?或試圖創建/改變它們? – DarkKnight
試圖創建過程。如果存在則刪除並批量創建過程。 – user4221591
已添加答案,請檢查 – DarkKnight