我使用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
会返回错误吗?我究竟做错了什么 ?
答案 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
。