[英]SQL Stored Procedure Error
也许我没有正确获取SQL参数,但这对我来说不起作用。 难道我做错了什么? 尝试保存此存储过程时,在关键字“ AS”附近收到错误的语法。
ALTER PROCEDURE MyProc
AS
DECLARE @CID int
DELETE FROM Contacts
WHERE ContactID=@CID
RETURN
您应该尝试-
ALTER PROCEDURE MyProc
@CID int
AS
BEGIN
DELETE FROM Contacts
WHERE ContactID=@CID
RETURN
END
GO
您需要将其更改为:
ALTER PROCEDURE MyProc
@CID int
AS
Begin
DELETE FROM Contacts
WHERE ContactID=@CID
end
GO
您缺少过程名称
ALTER PROCEDURE sp_YOURSPROC
编辑:
您有一个使用该名称的程序吗? 如果不是,您可能需要CREATE
而不是ALTER
。 但这会给您一个invalid object name
错误。
@CID应该是参数吗? 否则似乎没用。 但是,即使是这种情况,您也不会收到任何错误,也不会正确执行。
ALTER PROCEDURE MyProc
@CID INT
AS
DELETE FROM Contacts
WHERE ContactID=@CID
你已经宣布在过程中 @CID。 但应将其声明为参数:
ALTER PROCEDURE MyProc
@CID int -- it's a parameter
AS
DELETE
FROM Contacts
WHERE ContactID = @CID
如果存储的过程在数据库中尚不存在,则必须使用CREATE PROCEDURE
:
CREATE PROCEDURE MyProc
@CID int -- it's a parameter
AS
DELETE
FROM Contacts
WHERE ContactID = @CID
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.