HTML5 web SQL 和indexedDB的使用

web Sql database在IE和Firefox浏览器中是不支持的,使用示例

var datatable = null;
        var db = openDatabase("mydb","1.0","My Database",1024*100);
        db.transaction(function(tx){
            tx.executeSql("CREATE TABLE IF NOT EXISTS MsgData(name TEXT,message TEXT,time INTEGER)",[]);
            tx.executeSql("SELECT * from MsgData",[],function(tx,rs){
                console.log(rs.rows.length)
                for(var i=0;i<rs.rows.length;i++){
                    console.log(rs.rows.item(i))
                 }
            })
        })        
        function add(){
            db.transaction(function(tx){
                tx.executeSql("INSERT INTO MsgData VALUES(?,?,?)",[1,2,3],function(){
                    alert("成功");
                    tx.executeSql("SELECT * from MsgData",[],function(tx,rs){
                        for(var i=0;i<rs.rows.length;i++){
                            console.log(rs.rows.item(i))
                        }
                    })                    
                }),function(){
                    alert("失败")
                }
            })
        }
        setTimeout(function(){
            add();
        },5000);
        setTimeout(function(){
            db.transaction(function(tx){
                tx.executeSql("INSERT INTO MsgData VALUES(?,?,?)",[1,2,3],function(){
                    alert("成功");
                    
                }),function(){
                    alert("失败")
                }
            });
            db.transaction(function(tx){
                tx.executeSql("SELECT * from MsgData",[],function(tx,rs){
                    for(var i=0;i<rs.rows.length;i++){
                            console.log(rs.rows.item(i))
                        }
                })
            })
        },10000)

IndexDB使用示例

function connectDBtest(){
    window.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
    window.IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction || window.msIDBTransaction;
    window.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange || window.msIDBKeyRange
    var dbName = "indexedDBtest";
    var dbVersion = 1;
    var idb;
    var dbConnect = indexedDB.open(dbName,dbVersion);
    dbConnect.onsuccess = function(e){
        idb = e.target.result;
        alert("链接数据库成功");    
    }
    dbConnect.onerror = function(e){
        alert("链接数据库失败");
    }
}
connectDBtest()
经验分享 程序员 微信小程序 职场和发展