Core Data and MySQL as a data store?

I’ve been thinking a lot about Core Data recently. It supports SQLite out of the box, and its rather scalable and fast. Main reason being sqlite3 is included on every desktop and server of OS X that has shipped since 10.4 (Tiger).

It got me thinking about using MySQL as a data store. It will involve work, as Core Data itself is not extensible. And if written, will we have to embed MySQL into the application? What kind of problems will this pose? Licensing is the least of my worries, I’m thinking more from an application perspective.

I haven’t played with the Enterprise Objects Framework (EOF) yet, but it allows custom SQL, and is available in WebObjects so its probably time to take a gander. Only real problem is its not in Core Data, thus not available in desktop applications. Then there’s AJRDatabase which allows you to use EOF via Objective-C, which seems to be the missing link.

And then, why MySQL? Because it might be cool to use FEDERATED tables? Especially if FEDERATED is extended to allow local modifications…

Some useful resources: Core Data as a Cheap Database, CoreDataWish.

Technorati Tags: , ,


  1. Jan says:

    Since Objective-C has a very dynamic runtime, you might be able to extend CoreData for what you need.

    See and specifically


  2. Mathieu says:

    Go Colin go go go! ;-D