1. A method of providing access to data in a database, comprising: receiving, from a requesting entity, a search request for data available through a database abstraction model, wherein the database abstraction model provides (i) a plurality of logical fields each specifying an access method for accessing data in the database, and (ii) at least one model entity that specifies an identifier in the database used to identify instances of the model entity, and further specifies a set of the logical fields used to access data related to the model entity, and wherein the search request specifies the model entity to be searched and at least one search term; accessing, for each instance of the model entity in the database, data for each of the logical fields in the set of logical fields related to the model entity that are candidates for containing data matching the at least one search term; identifying, for each instance, whether the accessed data contains the at least one search term, and if so, adding the identifier for the specific instance of the model entity to a set of search results; and returning the search results to the requesting entity.