In this book, we talked about two methods for storing data on the client: Web Storage and Web SQL Storage. The Mozilla foundation took issue with the Web SQL specification, stating that they didn’t think it was a good idea to base the specification on a specific SQL engine. They introduced a new specification called the Indexed Database API, which is scheduled to become a standard of its own.
The Indexed Database API is a key/value store similar to the Web Storage APIs like localStorage and sessionStorage, but it provides methods for performing advanced queries. Unfortunately, at the time of writing, there are no implementations of this specification available, so it’s not even worth going into any implementation details because they will
most likely change between now and the time it’s implemented. Firefox 4 and Chrome 7 are expected to include support.
This is the specification you’ll want to watch closely, because Web SQL is at an impasse, and Mozilla has stated numerous times that it has no plans to ever implement Web SQL in Firefox, because Mozilla is uncomfortable with the SQL dialect and doesn’t think that the specification should be based on one particular database implementation. The Web
SQL specification uses the SQLite database dialect, which could change independent of the specification. It’s very likely that Internet Explorer will implement this specification as well, because Microsoft has taken an interest in its development.