1. A computer-implemented method for synchronizing data between a database system and a client database for a client application on a user computing device, the method comprising: determining if enhanced synchronization is enabled for a first object, wherein the first object was downloaded to the client database according to a first protocol for controlling access to the database system; when enhanced synchronization is enabled for the first object, performing a regular synchronization for updating the first object in the client database according to the first protocol for controlling access to the database system; determining that the first protocol for controlling access to the database system is replaced with a second protocol for controlling access to the database system; and performing the enhanced synchronization according to the second protocol for controlling access to the database system, wherein the enhanced synchronization comprises: determining ID of the first object; querying the database system for ID of at least one object which should be downloaded to the client database according to the second protocol for controlling access to the database; determining if the ID of the at least one object includes a new ID which is different from the ID of the first object; and when the ID of the at least one object includes the new ID, querying the database system for an object with the new ID, and downloading the object with the new ID to the client database, wherein the database system is a customer relationship management (“CRM”) system and the first object is a data object in the CRM system.