sqlite

2004 July 18 at 06:26 » Tagged as :

If you are one of those developevers who happen to less than impressed by the feature set of mysql you will be terribly disapointed with sqlite. Then again sqlite isn't really intended to be a replacement for mysql. It's more suited as a lightweight database for dekstop applications or very small sites.

Perhaps it's not a bad analogy to say Sqlite will become for linux developers what access has been for developers on the windows platform. In other words it's a simple and easy to use data storage system with almost zero installation and administration input requiremed.

One of the drawbacks of sqlite is that it is weakly typed meaning it does not recognize types (so why is a PHP programmer complaining?). All the data is stored as null terminated strings. That feels kind of like those small storage systems that we did about 10-15 years ago with C.

Those days if you looked at ten different programs they would have ten different storage systems. Often they used fixed length records but sometimes you ran into null terminated strings. You rarely find programs like that nowadays with access more often than not been the backend (at least on win32 systems).

Getting back to the null termination issue it effectively rules out the use of blobs in sqlite. Well you can use them if you want to but you have to suitably encode the data first (urlencode would be fine) so that the 'x0' if present get's a different representation. Having said that I have never been a big fan of blobs, most times all you need to do is to save the filename only in the database.