Web SQL Database API は HTML5 仕様の一部ではありませんが、SQL を使用してクライアント データベースを操作するための API セットを導入する独立した仕様です。
コアメソッド
OpenDatabase - 既存のデータベースまたは新しいデータベースを使用してデータベースオブジェクトを作成します
トランザクション - 物事を制御し、その状況に基づいてコミットまたはロールバックを実行できます
ExecuteSql - 実際の SQL ステートメントを実行します
データベースを開く
//用openDatabase()方法打开已存在的数据库,如果数据库不存在,则会创建一个新的数据库var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
openDatabase()メソッドは、5つのパラメータの説明に対応します:
データベース名
バージョン番号
説明テキスト
データベースサイズ (バイト)
作成コールバック (オプション)
5 番目のパラメーターである作成コールバックは、データベースの作成後に呼び出されます。
テーブルの作成
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); });
データの挿入
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "博客园")'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "www.cnblogs.com")'); });
動的値を使用してデータを挿入することもできます
db = openDatabase(, , , * *
データの読み取り
var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024); db.transaction(function (tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "博客园")'); tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "www.cnblogs.com")'); }); db.transaction(function (tx) { tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) { var len = results.rows.length; msg = "<p>查询记录条数: " + len + "</p>"; document.querySelector('#status').innerHTML += msg; for (i = 0; i < len; i++){ msg = "<p><b>" + results.rows[i].log + "</b></p>"; } }, null); });
レコードを削除
db.transaction(function (tx) { tx.executeSql('DELETE FROM LOGS WHERE id=1'); });
データの削除も動的に行うことができます
db.transaction(function(tx) { tx.executeSql('DELETE FROM LOGS WHERE id=?', [id]); });
レコードの更新
tx.executeSql("UPDATE CC SET logname='www.baidu.com' WHERE id=2");
tx.executeSql("UPDATE CC SET logname='www.baidu.com' WHERE id=?", [id]);
注: 削除と変更を、executeSql のテーブル作成ステートメントと組み合わせることはできません。別々に書くのが最善です
以下は構築されたデータベースです
以上がWeb SQL データベースの使用方法のチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。