DbUp v3.0 added support for transactions. Not all changes can be rolled back, but for many DDL and data changes on databases other than MySql transactions work fine. Out of the box there are 3 strategies:

  • No Transactions (default) - builder.WithoutTransaction()
  • Transaction per script - builder.WithTransactionPerScript()
  • Single transaction - builder.WithTransaction()

For more details about what statements can and cannot be executed in a transaction see: - This article has a good overview of many popular databases - Sql Server - MySql