[求助]一个存储过程中有两个更新操作,结果会怎样?
考察以下存储过程:CREATE PROCEDURE prcProc1 (@AccountNo1 char(4), @AccountNo2 char(4), @Amount money)
AS
BEGIN TRAN trnTran1
UPDATE Account
SET mBalance = mBalance-@Amount
WHERE cAccountNo = @AccountNo1
COMMIT TRAN
UPDATE Account
SET mBalance = mBalance+@Amount
WHERE cAccountNo = @AccountNo2
RETURN
在执行此过程时,执行了COMMIT TRAN 语句之后和第二个UPDATE 语句之前有一个系
统故障。在服务器启动后,关于此更新以下陈述中哪个是正确的?
1) 在查询此表时,表中仅反映出第一个UPDATE 语句所作的更新。
2) 在查询此表时,表中没有反映出第一个UPDATE 语句所作的更新。
3) 在查询此表时,二个UPDATE 语句所作的更新都正确地反映出来。
4) 在查询此表时,二个UPDATE 语句所作的更新都反映出来。但没有正确地反
映第一个UPDATE 语句所作的更新。