2012-10-22 56 views
0

簡單的事情......我想。創建一個視圖並稍後在同一個SQL腳本中使用它。 比方說,我們有一個腳本如下:創建視圖並在單個SQL腳本中使用它

CREATE VIEW someView AS (...) 
DROP VIEW someView 

如果我試圖解析它SQL管理投訴有周圍DROP錯誤。 如果我分開執行它們(先創建,然後放下),它們都可以正常工作。 有沒有什麼辦法可以創建一個視圖並在單個SQL腳本中使用它? 我可以在字符串中包含更多的語句,然後執行它,但這有點不方便。

代碼示例是固定的(缺少VIEW)

更有意義的例子:

create view TEST as (select name from spt_values where number=1); 
drop view TEST 

是否有可能同時執行呢? 我得到了錯誤:

Msg 156, Level 15, State 1, Procedure TEST, Line 2 
Incorrect syntax near the keyword 'drop'. 

運行單獨創建語句,然後下探視圖完美的作品。

+0

您正在使用哪個數據庫管理系統? –

+0

SQLServer 2005 + Microsoft SQL Server Management Studio \t 9.00.5000.00 – wilu

回答

2

獨立與GO關鍵詞中查詢波紋管查詢:

CREATE VIEW someView AS() 
GO 

DROP VIEW someView 
GO 
+1

這就是它,thx! – wilu

1

無論您使用哪個特定的DBMS,您都應該創建一個腳本,用';'分隔您的SQL語句。

例如

CREATE VIEW someView as (...); 

<<some other sql statements>> 

DROP VIEW someView; 
+0

這是正確的,但它不能解決問題 - 以後如何在同一腳本中使用新創建的視圖。 – wilu

+0

請發佈更多您的腳本和您遇到的錯誤。 –

+0

創建視圖測試爲(從spt_values中選擇名稱,其中number = 1); 下拉查看測試 – wilu

相關問題