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

SQL Server 2012存储过程错误消息102,sql,stored-procedures,sql-server-2012,Sql,Stored Procedures,Sql Server 2012,我使用SQL Server Management Studio 2012。当我尝试创建一个存储过程并执行它时,它每次都返回一个错误。我真的搞不清楚出了什么问题 例如: use AdventureWorks2012 CREATE PROCEDURE test () SELECT * FROM [Sales].[SalesPerson] 错误是: Msg 102,15级,状态1,程序测试,第1行 “')附近的语法不正确 即使我只是写创建过程测试 它会返回错误吗?我做错了什么 在创建过程时,您应该将

我使用SQL Server Management Studio 2012。当我尝试创建一个存储过程并执行它时,它每次都返回一个错误。我真的搞不清楚出了什么问题

例如:

use AdventureWorks2012
CREATE PROCEDURE test () SELECT * FROM [Sales].[SalesPerson]
错误是:

Msg 102,15级,状态1,程序测试,第1行
“')附近的语法不正确

即使我只是写
创建过程测试


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

在创建过程时,您应该将
作为
关键字

use AdventureWorks2012
GO

CREATE PROCEDURE test 
AS
SELECT * FROM [Sales].[SalesPerson]
GO
此外,如果有多个查询,您可以添加开始和结束。

尝试以下代码:

CREATE PROCEDURE test 
as        
begin               
  SELECT * FROM [Sales].[SalesPerson]
end
go
如果您的过程不需要参数,则必须删除
()
,并将
添加为
,还可以选择添加
开始-结束
(这样更有用)

如果以后要向过程中添加参数,请执行以下操作:

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

你使用什么数据库?SQL Server?MySQL?你看过文档中的语法了吗?我假设是MS SQL server,因为我在您的代码中看到AdventureWorks db引用,我只是复制并粘贴您编写的内容,看看会发生什么我真的不知道,我刚在学校开始做这件事,我不知道我到底在做什么。错误显示数据库中已经有一个名为“test”的对象这意味着您的语法已经正确,但问题是数据库中已经存在对象名
test
。尝试
创建程序sp\u test
,使其更具描述性