Difference between Core Data and SQLite
Apart from being ORM (Object Relational Model) You can compare Core-Data and SQLite as;
SQLite:
- Have Data Constrains feature.
- Operates on data, stored on disk.
- Can Drop table and Edit data without loading them in memory.
- Slow as compared to core data.
Core Data:
- Don't have Data Constraints,if required need to implement by business logic.
- Operates on in memory.(data needs to be loaded from disk to memory)
- Need to load entire data if we need to drop table or update.
- Fast in terms of record creation.(saving them may be time consuming)
Additionally apart from SQLite as back-end Core data can use XML or binary format for storing data to disk.
There is a huge difference between these two.
SQLite is a database itself like we have MS SQL Server.
But Core Data is an ORM (Object Relational Model) which creates a layer between the database and the UI. It speeds-up the process of interaction as we don't have to write queries, just work with the ORM and let ORM handles the backend.
For saving or retrieving large data, I recommend to use Core Data because of its abilities to handle the lower processing speed of iOS devices. Hope this helps.
@Arundhati: Using Core Data we can optimize the memory efficiently.
Regards.