Web SQL資料庫API並不是HTML5規範的一部分,但它是一個獨立的規範,引進了一組使用SQL操作客戶端資料庫的API。
核心方法
openDatabase-使用現有的資料庫或新建的資料庫建立一個資料庫物件
transaction-能夠控制一個事物,以及基於這種情況執行提交或回滾
executeSql-執行實際的SQL語句
開啟資料庫
//用openDatabase()方法打开已存在的数据库,如果数据库不存在,则会创建一个新的数据库 var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
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)'); });
插入資料
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")'); });
//e_id 和 e_log 是外部变量,executeSql 会映射数组参数中的每个条目给 "?" 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 (?, ?)', [e_id, e_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.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]);
以下是建好的資料庫
以上是HTML5關於Web SQL資料庫的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!