关闭

sql 创建多表删除的存储过程

906人阅读 评论(0) 收藏 举报

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER PROCEDURE [dbo].[存储哦过程的名称]
@userID varchar(50) --声明变量
AS
BEGIN
IF(@userID='' OR @userID IS NULL) --判断是否输入
BEGIN
   SELECT '0' as 'message','请输入要删除的用户ID!' AS 'ErrorInfo' --提示信息
   RETURN
END

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
END

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;

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:143840次
    • 积分:295
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:20篇
    • 译文:2篇
    • 评论:2条
    文章分类
    最新评论