正在尝试对应用程序的数据库执行更新,然后SQL服务器向我抛出了一个没有相应正在事务的提交。很好心地指出了我的程序,但我似乎找不到问题所在。
这是我的代码:
ALTER PROCEDURE [dbo].[sp_tblUser_Update] @UserID INTEGER,
@UserName NVARCHAR(20),
@Password NVARCHAR(10),
@Yard NVARCHAR(50),
@NewRole NVARCHAR(50),
@FullName NVARCHAR(50),
@Email NVARCHAR(50),
@BCConEmails BIT,
@CrewStatusReadOnly BIT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
UPDATE tblUser
SET UserName = @UserName,
UserPassword = @Password,
Yard = @Yard,
Fullname = @FullName,
EmailAddress = @Email,
NewRole = @NewRole,
BCConEmails = @BCConEmails,
CrewStatusReadOnly = @CrewStatusReadOnly
WHERE ( UserID = @UserID )
END
GO
COMMIT
您
不需要COMMIT
行,因为代码中的END
是终止前一个BEGIN
的原因。如果要添加事务,则应在 update 语句之前放置一个BEGIN TRANSACTION
,并将COMMIT
移到END
begin tran
delete from Customerages
where Age=25
commit;
begin tran
delete from Customerages
where Age=25
rollback;