2017-01-12 37 views
0

我試圖找到如何調用存儲過程。多次調用時存儲過程無法執行

我的問題是從應用程序中刪除一條記錄時,它調用一個存儲過程,它對單條記錄工作正常。在同時選擇多個記錄的同時,程序會在'@'附近發出錯誤,提示語法無效。我試圖找出是否需要重寫存儲過程,或者如果它是無法識別SP中聲明的變量的應用程序。

SP代碼:

alter procedure [dbo].[storedprocedure] 

@Variable int 
AS 
BEGIN 

    SET NOCOUNT ON; 
    --DML Statement-- 

END 

我想包括聲明塊中的變量,但它無法執行說,它無法找到該變量。它的寫作方式適用於單個記錄。我需要它在同一時間爲多個記錄工作。

+0

您不能爲您的@variable分配多於1個int值。 – dfundako

回答

2

,而同時選擇多條記錄,該程序引發 錯誤

這可能是因爲你已經定義了一個標量說@Variable int因此如果您選擇了多個記錄,並嘗試將其刪除,你的標量變量將無法阻止它們。可能您應該考慮使用Table Type variableTemporary Table來代替。

+0

謝謝!我如何在這種情況下使用臨時表?你可以給我一個例子嗎? – user7396033