Why not use MS JET .mdb files? What does this offer over that? I mean even Access supports foreign keys.
Someone can explain this? And dont just give me more of that blind MS hatred crap.
Are you asking for a side-by-side comparison of Access to SQLite, or a reason for SQLite's existance?
SQLite is designed to be a tiny, embeddable, cross-platform database engine that is ACID compliant. Here are just a few of the reasons off the top of my head why people switch from Access to "another" database:
- Access isn't ACID compliant.
- Access databases can't be larger than 2gb
- Access has a very non-standard query and join syntax
- Access doesn't support named parameters
- Access databases are bloated
- Access doesn't run on *NIX or Mac or other embedded platforms
- Access is no longer supported on Windows CE
- Access is closed-source
SQLite "supports" foreign keys, but currently (as of 3.3.4) doesn't "enforce" them. SQLite will be enforcing foreign key constraints very soon, but has "supported" them since 2.5.0
For the record, I am far from a Microsoft hater -- I've made lots of money off their existance and am a Microsoft ISV and card-carrying MSDN Universal subscriber for many years. I have also developed lots of commercial apps with Access in both C++/COM and in .NET. I think Access is a great engine and has its role -- but like any database engine, it has its shortcomings.
Seriously, you waste people's time when you troll like this. Why don't you google for this kind of stuff and leave us alone?
Access does not support triggers
Access is VERY SLOOOOWWWWWWWWWWWWWWWWWW
Access has very bloated drivers that eat RAM and leak memory and lockup frequently
Access databases corrupt easily (not ACID compliant) and lose data.