Web SQL Databaseを使いやすくするライブラリ WebSQLDatabaseAPI1は既にW3Cからは策定除外されています。
http://dev.creatorish.com/demo/websql/
var db = new WebSQL('sample', '0.1', 'サンプルデータベース', 1048576);
new WebSQL('データベース名', 'バージョン', 'データベースの名称', データベース容量);
※全て省略可能です。
■デフォルト値
- データベース名: "websql"
- バージョン: "1"
- データベース名: "websql"
- データベース容量: 8 * 1024 * 1024
db.createTable("テーブル名",カラム名を配列で,テーブルが既にあるかどうかを確認);
■例
db.createTable("test",[
"name",
"age",
"option"
],true);
db.insert("テーブル名",インサートするデータオブジェクト,コールバック関数,エラー時のコールバック関数);
■例
db.insert("test",{
name: "太郎",
age: 27,
option: "特になし"
});
db.update("テーブル名",更新するデータオブジェクト,”SQL に”追加するオプション記述,コールバック関数,エラー時のコールバック関数);
■例
db.update("test",{
age: 28
},"WHERE name='太郎'");
db.delete("テーブル名","SQLに追加するオプション記述",コールバック関数,エラー時のコールバック関数);
■例
db.delete("test","WHERE name='太郎'");
db.select("テーブル名","SQLに追加するオプション記述",コールバック関数,エラー時のコールバック関数);
■例
db.select("test","WHERE name='太郎'",function(result) {
window.console.log(result);
});
db.dropTable("テーブル名");
■例
db.dropTable("test");
db.transaction(callback,errorCallback,voidCallback);
任意にトランザクションをする場合に使用します。 使い方はSQLDatabaseAPIのtransactionと同じです。
db.executeSql(sql,callback,errorCallback);
直でSQL文を実行することができます。 SQL文がselect文の場合にはcallback関数でresultを取得できます。
db.executeSql("SELECT * FROM test WHERE name='太郎'",function(result) { window.console.log(result); });
####データベースのバージョン変更 ####
データベースのバージョンを変更することができます。 使い方はほぼSQLDatabaseAPIのchangeVersionと同じです。
db.changeVersion(newVersion,callback,errorCallback,voidCallback);
本ライブラリではメソッドチェーンで処理をつなぐことができます。(β版) 下記の例ではテーブルを作成後、select文を実行し、結果が返ったとき(then)に処理を実行します。
■例
db.createTable("test",[
"name",
"age",
"option"
],true).select("test").then(function(result) {
for (var i = 0; i < result.rows.length;i++) {
var item = result.rows.item(i);
createRow(item.name,item.age,item.option);
}
});
transactionやexecuteSQLもつなぐことができます。
Copyright © 2012 creatorish.com Distributed under the MIT License.
creatorish yuu Weblog: http://creatorish.com Facebook: http://facebook.com/creatorish Twitter: http://twitter.jp/creatorish