http://hacks.mozilla.org/2010/06/comparing-indexeddb-and-webdatabase/
This the source of one of the most interresting information about Web future: Database browser integration.
Here is explain and demonstrate usage of embedded database, and how to manage version changing base on a "version" field, integrated in the database instance and manage by the database engine.
The most demonstrative code sample (extract from the Post) :
...
if (db.version != "1") { db.changeVersion(
db.version, "1", function(tx) {
// User's first visit. Initialize database.
var tables = [ { name: "kids", columns: ["id INTEGER PRIMARY KEY", "name TEXT"]},
{ name: "candy", columns: ["id INTEGER PRIMARY KEY", "name TEXT"]},
{ name: "candySales", columns: ["kidId INTEGER", "candyId INTEGER", "date TEXT"]} ];
for (var index = 0; index < tables.length; index++) {
var table = tables[index];
tx.executeSql("CREATE TABLE " + table.name + "(" + table.columns.join(", ") + ");");
}
}, null, function() {
loadData(db); });
}
...
Sample 1 - Database initialization based on database versioning
This code rock !