sql 建立多表刪除的存儲過程

CREATE PROCEDURE [dbo].[存儲哦過程的名稱]事務

@userID varchar(50) --聲明變量
AS
BEGIN
IF(@userID='' OR @userID IS NULL) --判斷是否輸入
BEGIN
   SELECT '0' as 'message','請輸入要刪除的用戶ID!' AS 'ErrorInfo' --提示信息
   RETURN
END
get

BEGIN TRANSACTION --開啓事務變量

DELETE FROM 表1 WHERE ID = @userID; --刪除表中數據
IF(@@ERROR<>0)
BEGIN
   ROLLBACK TRANSACTION;
   SELECT '0' as 'message','刪除失敗!' AS 'ErrorInfo'
   RETURN
END數據

DELETE FROM 表2 WHERE ID = @userID; --刪除表中數據
IF(@@ERROR<>0)
BEGIN
   ROLLBACK TRANSACTION;
   SELECT '0' as 'message','刪除失敗!' AS 'ErrorInfo'
   RETURN
ENDdb

DELETE FROM 表3 WHERE ID = @userID; --刪除表中信息
IF(@@ERROR<>0)
BEGIN
   ROLLBACK TRANSACTION;
   SELECT '0' as 'message','刪除失敗!' AS 'ErrorInfo'
   RETURN
END COMMIT TRANSACTION;
SELECT '0' as 'message','刪除成功!' AS 'ErrorInfo'
END;mail

相關文章
相關標籤/搜索