Transact-SQL Statements Allowed in Transactions

You can use all Transact-SQL statements in an explicit transaction, except for the following statements:

ALTER DATABASE

CREATE FULLTEXT INDEX

ALTER FULLTEXT CATALOG

DROP DATABASE

ALTER FULLTEXT INDEX

DROP FULLTEXT CATALOG

BACKUP

DROP FULLTEXT INDEX

CREATE DATABASE

RECONFIGURE

CREATE FULLTEXT CATALOG

RESTORE

You also cannot use the following:

  • Full-text system stored procedures in an explicit transaction. For more information, see Full-Text Search Stored Procedures (Transact-SQL).

  • sp_dboption to set database options or use any system procedures that modify the master database inside explicit or implicit transactions.

UPDATE STATISTICS can be used inside an explicit transaction. However, UPDATE STATISTICS commits independently of the enclosing transaction and cannot be rolled back.