次期GearsにはHTML5互換のDatabase APIが入ります
こちらの記事が人気みたいなので。
この方が既にご存知なのかは知らないけど、 Gears には Database 2 API というのが追加されることになっていて、こちらは HTML5 の Storage API 互換を目指している。
var dbman = goolge.gears.factory.create('beta.databasemanager'); var db = dbman.open('pages', '0.0.1.0', 'Collection of crawled pages', 3000000); function renderPageRow(row) { // insert page row into a table } function reportError(source, message) { // report an error } function renderPages() { db.transaction(function(tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS Pages(title TEXT, lastUpdated INTEGER)', []); tx.executeSql('SELECT * FROM Pages', [], function(rs) { for(var i = 0; i < rs.rows.length; i++) { renderPageRow(rs.rows.item(i)); } }) }) } function insertPage(text, lastUpdated) { db.transaction(function(tx) { tx.executeSql('INSERT INTO Pages VALUES(?, ?)', [ text, lastUpdated ], function() { // no result returned, stub success callback }, function(tx, error) { reportError('sql', error.message); }); }); }
ってな感じで。
そもそもなんで Gears の Database API が HTML5 のものと互換性が無いかというと、HTML5 の仕様草稿より先に Gears が存在したからという理由で、Gears が標準を疎かにしているわけではない。
Gears は HTML5 という仕様の実装の一つであり、常に HTML5 を包括するものであることを目指している。
などということがこのへんに書いてある。