Web SQL數據庫:它是一個獨立的規範,引入了一組使用SQL操做客戶端數據庫的API。數據庫
openDatabase方法:這個方法使用現有的數據庫或者新建的數據庫建立一個數據庫對象。若是數據庫存在,openDatabase方法負責開啓數據庫,若是不存在,這個方法會建立一個新的數據庫。函數
案例:下面的代碼能夠建立並開啓一個數據庫對象
var db = openDatabase('mydb', '1.0', 'test DB', 2*1024*1024, function (){})blog
上面的方法接受5個參數:事務
一、數據庫名稱回調函數
二、版本號io
三、描述文本console
四、數據庫大小table
五、回調函數function
transaction方法:這個方法讓咱們可以控制一個事務,以及基於這種狀況執行提交或回滾。這個方法有一個參數,他是一個負責實際執行查詢的函數。
案例:查詢一個表,若是沒有就建立它
var db = openDatabase('mydb', '1.0', 'test DB', 2*1024*1024);
db.transaction(function (tx){
console.log(tx)
tx.executeSql('create table if not exists testDB (id unique, testDB)');
});
上面的查詢語句會在 mydb數據庫中建立一個叫testDB的表
executeSql方法:這個方法用於執行實際的SQL查詢。
案例:查詢數據庫裏面的數據
var db = openDatabase('mydb', '1.0', 'test DB', 2*1024*1024);
db.transaction(function (tx){
//建立表
tx.executeSql('create table if not exists testDB (id unique, testDB)');
//插入數據
tx.executeSql('insert into testDB (id, testDB) values (1 , "csh")');
tx.executeSql('insert into testDB (id, testDB) values (2 , "csk")');
});
db.transaction(function (tx){
//讀取數據
tx.executeSql('select * from testDB', [], function (tx, results){
console.log(results.rows)
})
});