2012-06-14 136 views
-1

我正試圖創建視圖和過程。然而,他們都無法完成。SQL Server 2008創建過程並創建視圖

我曾嘗試創建這樣的過程:

create procedure name (@time) 
as 
begin 
    select tag_ID from Location where [email protected]; 
end 

create procedure name 
as 
    select tag_ID from Location where [email protected]; 
end 

兩個結果在下面的錯誤

主要錯誤0x80040E14,次要錯誤25501 創建過程的名字從位置 作爲 選擇TAG_ID其中tag_ID = @時間 解析查詢時發生錯誤。 [令牌行號= 1,令牌行偏移= 8,令牌在錯誤=過程]

爲了創建視圖

create view Time as select time from Location; 

我收到的錯誤是:

主要錯誤0x80040E14 ,輕微錯誤25501 創建視圖時間從地點選擇時間 解析查詢時出錯。 [令牌行號= 1,令牌行偏移量= 8,令牌出錯=查看]

這似乎是使用CREATE時出現的問題,但我無法弄清楚。

我已經嘗試了大部分的語法,但它似乎不工作,其中大多數彈出相同的錯誤。

**我正在使用SQL精簡版。

回答

1

您錯過了過程參數的類型。嘗試這樣的:

CREATE procedure name (@time varchar(100)) 
AS BEGIN 
    select tag_ID from Location where [email protected]; 
END 
1

錯誤,因爲你缺少datatype for procedure's parameter。 注意:請重新檢查您正在使用的數據類型,我在這裏使用datetime。

CREATE PROCEDURE Name (@time DATETIME) 
AS 
BEGIN 
    SELECT tag_id 
    FROM location 
    WHERE tag_id = @time; 
END 
+0

該錯誤仍然存​​在與相同的錯誤消息,我試圖創建一個沒有任何變量的過程(即創建過程作爲開始從位置結束選擇tag_id) –

+0

在此處發佈代碼。 –

+0

@NadiiLo你發佈的每個版本的代碼都有不同的語法錯誤。在上面的代碼中,您有** end **關鍵字,但沒有**開始**。嘗試使用這裏發佈的答案之一。 – McGarnagle