Web Sql 關係數據庫

做者:心葉
時間:2018-04-30 15:44sql

前面說的IndexDB是索引型數據庫,相對而言,不是真正的數據庫,此處介紹的是關係型數據庫,使用的方言是SQLlite。數據庫

舒適提示:目前不少瀏覽器都支持,不過這倒是一個規範上被廢棄的功能。數組

這裏主要介紹的是下面三個方法:瀏覽器

1.openDatabase:這個方法使用現有數據庫或新建數據庫來建立數據庫對象;函數

2.transaction:這個方法容許咱們根據狀況控制事務提交或回滾;code

3.executeSql:這個方法用於執行SQL查詢。對象

第一步:鏈接數據庫。

var dataBase = openDatabase("hobby", "1.0", "我的業餘愛好儲存數據庫", 1024 * 1024,
    function() {
        console.log('數據庫建立成功');
    }
);

1.第一個參數表明數據庫名稱;索引

2.第二個參數表明版本號,目前爲1.0;事務

3.第三個參數表明對數據庫的描述;字符串

4.第四個參數是用來設置數據的大小;

5.第五個參數是回調函數(可省略)。

openDatabase方法打開一個已經存在的數據庫,若是數據庫不存在,它還能夠建立數據庫

第二步:事務。

transaction方法用以處理事務,當一條語句執行失敗的時候,整個事務回滾,方法包含三個參數:

1.包含事務內容的一個方法;

2.成功回調函數(可選);

3.失敗回調函數(可選)。

dataBase.transaction(function(context){
    context.executeSql('sql語句一');
    context.executeSql('sql語句二');
    context.executeSql('sql語句三');
},function(){
    console.log('執行成功');
},function(){
    console.log('執行失敗');
});

上面一共執行了三條sql語句,其中任何一條sql執行若是遇到錯誤,整個事務都會回滾。

第三步:執行SQL語句。

從上面的事務例子代碼應該已經看出來,是在事務裏面用executeSql方法來執行sql語句,其中有四個參數:

1.字符串類型的sql語句;

2.用以替換查詢字符串中問號的參數,是一個數組;

3.執行成功回調函數(可選),返回兩個參數:context和執行的結果;

4.執行失敗回調函數(可選),context和失敗的錯誤信息。

使用的SQL語言是SQLite,若是要建立表,執行對數據的增刪改查,使用對應的sql語句就能夠了。

相關文章
相關標籤/搜索