SQL Server 2008创建过程并创建视图

时间:2012-06-14 05:03:19

标签: sql-server-2008 stored-procedures view

我试图创建一个视图和一个过程。但是,没有一个可以完成。

我尝试过创建这样的程序:

create procedure name ( @time )
as 
begin
    select tag_ID from Location where tag_ID=@time;
end

create procedure name 
as 
    select tag_ID from Location where tag_ID=@time;
end

两者都会导致以下错误

  

主要错误0x80040E14,次要错误25501   创建程序名称   如   从位置选择tag_ID,其中tag_ID = @time   解析查询时出错。 [令牌行号= 1,令牌行偏移= 8,错误令牌=过程]

用于创建视图

create view Time as select time from Location;

我收到的错误是:

  

主要错误0x80040E14,次要错误25501   创建视图时间作为从位置选择时间   解析查询时出错。 [令牌行号= 1,令牌行偏移= 8,令牌错误=视图]

使用CREATE似乎有些问题,但我无法弄明白。

我已经尝试了大部分语法,但它似乎无法正常工作,大多数都会弹出相同的错误。

**我使用的是SQL紧凑版。

3 个答案:

答案 0 :(得分:1)

您缺少过程参数中的类型。尝试这样的事情:

CREATE procedure name ( @time varchar(100)) 
AS BEGIN
    select tag_ID from Location where tag_ID=@time; 
END

答案 1 :(得分:1)

错误,因为您缺少datatype for procedure's parameter。 注意:请重新检查您正在使用的数据类型我在这里使用datetime。

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

答案 2 :(得分:0)

您使用的是Sql Server数据库引擎还是SQL CE?我认为您使用的是SQL CE或限制版本,其中不允许使用视图和过程;

参考 http://social.msdn.microsoft.com/Forums/uk/sqlce/thread/f6ba9114-a962-41c2-b142-448c0f427cce