If, after a start, the database is found in an
inconsistent state or not been shut down properly, the
database management system reviews the database logs for
uncommitted transactions and rolls back the changes made
by these transactions. Additionally, all transactions that
are already committed but whose changes were not yet
materialized in the database are re-applied. Both are done
to ensure atomicity and durability of transactions.
Yes, the database either reverses the changes.
https://en.wikipedia.org/wiki/Transaction_log