| title | ROLLBACK WORK (Transact-SQL) | ||||||
|---|---|---|---|---|---|---|---|
| description | ROLLBACK WORK (Transact-SQL) | ||||||
| author | markingmyname | ||||||
| ms.author | maghan | ||||||
| ms.reviewer | dfurman, randolphwest | ||||||
| ms.date | 12/17/2025 | ||||||
| ms.service | sql | ||||||
| ms.subservice | t-sql | ||||||
| ms.topic | reference | ||||||
| ms.custom |
|
||||||
| f1_keywords |
|
||||||
| helpviewer_keywords |
|
||||||
| dev_langs |
|
||||||
| monikerRange | =azuresqldb-current || >=sql-server-2016 || >=sql-server-linux-2017 || =azuresqldb-mi-current || =fabric-sqldb |
[!INCLUDE SQL Server Azure SQL Database Azure SQL Managed Instance Fabricsqldb]
Rolls back a user-specified transaction to the beginning of the transaction.
:::image type="icon" source="../../includes/media/topic-link-icon.svg" border="false"::: Transact-SQL syntax conventions
ROLLBACK [ WORK ]
[ ; ]
This statement functions identically to ROLLBACK TRANSACTION except that ROLLBACK TRANSACTION accepts a user-defined transaction name. With or without specifying the optional WORK keyword, this ROLLBACK syntax is ISO-compatible.
When there are inner transactions, ROLLBACK WORK always rolls back to the outermost BEGIN TRANSACTION statement and decrements the @@TRANCOUNT system function to 0.
Requires membership in the public role.