A database transaction is a logical unit of work that contains several operations within. By definition, it will have four ACID properties: atomic, consistent, isolated, and durable.
A transaction must provide a sense of a full commitment to performing the work, or a way to rollback and not complete the work. It must also keep each transaction separate and isolated from the others, and ensure that transactions are completed, and information is written to the database. It must also reduce any amounts of database inconsistency and allow the best and proper way to recover from any failures.