說,我們有存儲過程(一個或多個)執行的簡單操作如何使用存儲過程檢查刪除/更新操作是否成功完成?
CREATE PROCEDURE [dbo].[AddNewAuthorReturnID]
(
@Author_Name VARCHAR(MAX),
@Author_ID int OUTPUT
)
AS
SET NOCOUNT OFF;
BEGIN
INSERT INTO AUTHORS (@Author_Name)
VALUES (@Author_Name)
SET @Author_ID = SCOPE_IDENTITY()
SELECT @Author_ID
END
在上述過程
,所述重新調整的ID是成功的操作的指示。
考慮這個
CREATE PROCEDURE [dbo].[DeleteAuthor]
(
@Author_ID int
)
AS
SET NOCOUNT OFF;
BEGIN
DELETE FROM AUTHORS
WHERE
(Author_ID = @Author_ID)
END
我們怎樣才能知道手術很成功 和記錄(作者)的 成功地取出,如果我們使用上面 程序?
與更新操作相同嗎?
感謝
@約翰,如果語句不影響任何行,但發生了什麼沒有錯誤? – Giorgi 2010-01-19 12:11:32
更新操作如何? – 2010-01-19 12:11:57
@asdi,您可以使用@@ ROWCOUNT與更新操作相同的方式,但我不建議使用它,因爲如果存儲過程執行時沒有錯誤,但沒有行受到影響,它將返回0 – Giorgi 2010-01-19 12:15:04