0

在我看来,以下代码在 关键字“IF”附近产生错误消息 Incorrect syntax

ALTER VIEW [dbo].[IDW_vwGetProductOutPut] 
AS  
IF EXISTS
( SELECT * FROM tempdb.dbo.sysobjects 
  WHERE ID = OBJECT_ID(N'tempdb..#TempPackaging')) 
BEGIN
    DROP TABLE #TempPackaging 
END  . . . . . .     

--code to create temp table goes here . .  and so on

请问我该如何编码?

4

2 回答 2

6

视图只能包含SELECT 语句,您拥有的更像是存储过程

CREATE PROC [dbo].[IDW_spGetProductOutPut] 
AS  
IF EXISTS
( SELECT * FROM tempdb.dbo.sysobjects 
  WHERE ID = OBJECT_ID(N'tempdb..#TempPackaging')) 
BEGIN
    DROP TABLE #TempPackaging 
END  . . . . . .     

--code to create temp table goes here . .  and so on
于 2012-10-01T17:33:32.347 回答
0

我不相信 SQL Server 提供此功能。作为一种解决方法,您可能希望在存储过程中执行您的逻辑。

于 2012-10-01T17:36:38.777 回答