diff --git a/pg-transact.cabal b/pg-transact.cabal
--- a/pg-transact.cabal
+++ b/pg-transact.cabal
@@ -1,5 +1,5 @@
 name:                pg-transact
-version:             0.2.0.1
+version:             0.2.1.0
 synopsis: Another postgresql-simple transaction monad
 description: Another postgresql-simple transaction monad
 homepage:            https://github.com/jfischoff/pg-transact#readme
diff --git a/src/Database/PostgreSQL/Transact.hs b/src/Database/PostgreSQL/Transact.hs
--- a/src/Database/PostgreSQL/Transact.hs
+++ b/src/Database/PostgreSQL/Transact.hs
@@ -90,6 +90,9 @@
   $ run
   $ runReaderT (unDBT action) conn
 
+runDBTNoTransaction :: DBT m a -> Connection -> m a
+runDBTNoTransaction action conn = runReaderT (unDBT action) conn
+
 -- | Perform a @SELECT@ or other SQL query that is expected to return
 -- results. All results are retrieved and converted before this
 -- function returns.
@@ -215,8 +218,8 @@
 rollbackToAndReleaseSavepoint :: Savepoint -> DB ()
 rollbackToAndReleaseSavepoint sp = getConnection >>= liftIO . flip Simple.rollbackToAndReleaseSavepoint sp
 
--- | Run an action and discard the effects.
-rollback :: DB () -> DB ()
+-- | Run an action and discard the effects but return the result
+rollback :: DB a -> DB a
 rollback actionToRollback = mask $ \restore -> do
   sp <- savepoint
   restore actionToRollback `finally` rollbackToAndReleaseSavepoint sp
