簡體   English   中英

SQL存儲過程錯誤

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM