CREATE PROCEDURE IR_rb_User_UpdateUser
(
@UserID int,
@Name nvarchar(50),
@Email nvarchar(100),
@Password nvarchar(20),
@RoleID int,
@iSuccess int output
)
ASset @iSuccess = -1 --判断是否成功有错误应为插入重复键IF EXISTS (SELECT Email FROM rb_Users WHERE Email = @Email and UserID<>@UserID)
BEGIN
set @iSuccess = -2
return
ENDBEGIN TRAN UPDATE rb_Users SET Name = @Name, Email = @Email, Password = @Password WHERE UserID = @UserID IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
return
END
set @iSuccess = -3 update rb_UserRoles set RoleID=@RoleID where UserID=@UserID IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
return
ENDCOMMIT TRANset @iSuccess = 1
GO
(
@UserID int,
@Name nvarchar(50),
@Email nvarchar(100),
@Password nvarchar(20),
@RoleID int,
@iSuccess int output
)
ASset @iSuccess = -1 --判断是否成功有错误应为插入重复键IF EXISTS (SELECT Email FROM rb_Users WHERE Email = @Email and UserID<>@UserID)
BEGIN
set @iSuccess = -2
return
ENDBEGIN TRAN UPDATE rb_Users SET Name = @Name, Email = @Email, Password = @Password WHERE UserID = @UserID IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
return
END
set @iSuccess = -3 update rb_UserRoles set RoleID=@RoleID where UserID=@UserID IF @@ERROR <> 0
BEGIN
ROLLBACK TRAN
return
ENDCOMMIT TRANset @iSuccess = 1
GO
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货