我有2个命令,需要两个命令都正确执行或都不执行。所以我认为我需要一笔交易,但是我不知道如何正确使用它。
以下脚本有什么问题?
BEGIN TRANSACTION [Tran1]
INSERT INTO [Test].[dbo].[T1]
([Title], [AVG])
VALUES ('Tidd130', 130), ('Tidd230', 230)
UPDATE [Test].[dbo].[T1]
SET [Title] = N'az2' ,[AVG] = 1
WHERE [dbo].[T1].[Title] = N'az'
COMMIT TRANSACTION [Tran1]
GO
该INSERT
指令被执行,但该UPDATE
命令有一个问题。
如果它们中的任何一个执行有错误,我该如何实现以回滚这两个命令?
BEGIN TRANSACTION [Tran1]
应该放在里面TRY
吗?无论如何-非常简单而优雅的代码段。