Which Transact-SQL statement should you use?

You use Microsoft SQL Server 2012 to develop a database application.
You create a stored procedure named dbo.ModifyData that can modify rows.
You need to ensure that when the transaction fails, dbo.ModifyData meets the following requirements: Does not return an error
Closes all opened transactions
Which Transact-SQL statement should you use?
A. BEGIN TRANSACTION BEGIN TRY
EXEC dbo.ModifyData COMMIT TRANSACTION END TRY
BEGIN CATCH
IF @@ TRANCOUNT = 0 ROLLBACK TRANSACTION; END CATCH
B. BEGIN TRANSACTION BEGIN TRY
EXEC dbo.ModifyData COMMIT TRANSACTION END TRY
BEGIN CATCH
IF @@ERROR != 0 ROLLBACK TRANSACTION; THROW;
END CATCH
C. BEGIN TRANSACTION BEGIN TRY
EXEC dbo.ModifyData COMMIT TRANSACTION END TRY
BEGIN CATCH
IF @@TRANCOUNT = 0 ROLLBACK TRANSACTION; THROW;
END CATCH
D. BEGIN TRANSACTION BEGIN TRY
EXEC dbo.ModifyData COMMIT TRANSACTION END TRY
BEGIN CATCH
IF @@ERROR != 0 ROLLBACK TRANSACTION; END CATCH

microsoft-exams

Leave a Reply

Your email address will not be published. Required fields are marked *


The reCAPTCHA verification period has expired. Please reload the page.