1. A method for reading data from a database object in a database, wherein the method comprises: performing an uncommitted read including an optimistic read of the database object during a transaction, wherein the optimistic read is performed without enforcing consistency requirements of data that is not required to be committed to the database; executing a first consistency check of the database object to determine whether the data is consistent with the database; performing a committed read including a first pessimistic read of the database object during the transaction when the first consistency check indicates the data as being inconsistent with the database, wherein the performing of the committed read includes committing the data to the database and allowing concurrent modification of the database object; executing a second consistency check of the database object to determine whether the data is consistent with the database, in response to the first pessimistic read; and performing a guaranteed read including a second pessimistic read of the database object during the transaction when the second consistency check indicates the data not being consistent with the database, wherein the performing of the guaranteed read includes committing the data to the database and disallowing concurrent modification of the database object.