DB returns a non-transaction *sql.DB.
The reason is there is a need for testing stuff that should not be in the
same transactions, e.g. when generating current_timestamp, or locking in
different connection.
Tx runs everything as a single transaction.
The operations will be rollbacked at the end, reducing the need to manually
create transactions and rollbacking.