SQL Server 2012存储过程错误消息102

时间:2012-09-13 07:35:52

标签: sql stored-procedures sql-server-2012

我使用SQL Server Management Studio 2012.当我尝试创建存储过程并执行它时,每次都会返回错误。我真的无法弄清楚什么是错的。

例如:

use AdventureWorks2012
CREATE PROCEDURE test () SELECT * FROM [Sales].[SalesPerson]

,错误是:

  

Msg 102,Level 15,State 1,Procedure test,Line 1   ')'附近的语法不正确。

即使我只是写CREATE PROCEDURE TEST

会返回错误吗?我究竟做错了什么 ?

2 个答案:

答案 0 :(得分:3)

试试这段代码:

CREATE PROCEDURE test 
as        
begin               
  SELECT * FROM [Sales].[SalesPerson]
end
go

如果您的程序不需要参数,则必须删除(),并添加as,可选begin-end(它更有用)。

如果您希望将来为您的程序添加参数:

CREATE PROCEDURE test 
(
  @param1 int
)
as        
begin               
  SELECT * FROM [Sales].[SalesPerson]
  where id = @param1
end
go

答案 1 :(得分:2)

创建过程时应该有AS个关键字

use AdventureWorks2012
GO

CREATE PROCEDURE test 
AS
SELECT * FROM [Sales].[SalesPerson]
GO

此外,如果您有多个查询,则可以添加BEGIN and END

相关问题