2011-07-17 60 views
1

我在SQL Server Express中使用UDF,它使用newid(),因此需要一個視圖才能正常工作。SQL Server Express中的'CREATE VIEW'

我在哪裏可以使用SQL Server Express和VS 2010創建視圖?右鍵單擊數據庫模式中的視圖並單擊添加新視圖僅加載可視化設計器。另外,VS 2010中的SQL編輯器不允許我在功能文件中添加CREATE VIEW語句。以下是我需要讓UDF有權訪問的SQL語句:

create view getNewID as select newid() as new_id 
+2

這個問題有很多部分讓我去'洪'?,我不知道從哪裏開始。 (好吧,我會一起去)爲什麼你不能直接使用'newid()'? –

+0

在UDF中禁止使用newid(),因爲它們是非確定性的。因此需要創建一個視圖 – Jason

+1

爲什麼UDF需要確定性有很好的理由。規避這些規則不會贏得任何東西,除了未定義的行爲。 –

回答

0
  1. 安裝SSMS
  2. 內SSMS,你的數據庫
  3. 打開一個查詢窗口打開新的連接(按Ctrl -N)
  4. 貼在create view getNewID as select newid() as new_id,然後按F5以使其運行
0

採用由於UDFs是非確定性的,因此禁止在UDF中使用。因此需要創建一個視圖。