Web SQL Database

持久性:IndexedDB==WEB SQL DB> Local storage>session storage

注:IndexedDB和WEB SQL DB的区别主要在于 IndexedDB是NoSQL的WEB数据库,而WEB SQL DB是SQL数据库


当你在chrome下 F12--->Resources选项卡中如下东西


session storage的用法  作用域:当前选项卡页面



sessionStorage.setItem(key,value);//插入数据

sessionStorage.removeItem(key);//删除数据
sessionStorage.getItem(key);//获取数据

local storage的用法 作用域:当前不关闭的浏览器,多个选项卡之间可以传递值

localStorage.setItem(key,value);//插入数据

localStorage.removeItem(key);//删除数据

localStorage.getItem(key);//获取数据


web sql db 用法 作用域:整个浏览器,清除缓存不影响,除非调用 sql的 delete方法。使用方法如下:


 var db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
 var msg;
 db.transaction(function (tx) {
    tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)');
    tx.executeSql('INSERT INTO LOGS (id, log) VALUES (1, "foobar")');
    tx.executeSql('INSERT INTO LOGS (id, log) VALUES (2, "logmsg")');
    msg = 'Log message created and row inserted.';
   console.log(msg);
 });

<pre name="code" class="javascript"> db.transaction(function (tx) {
    tx.executeSql('SELECT * FROM LOGS', [], function (tx, results) {
    var len = results.rows.length, i;
     msg = "Found rows: " + len ;
    console.log(msg)
    for (i = 0; i < len; i++){
       msg = "row:" + results.rows.item(i).log ;
       console.log(msg);
     }
    }, null);
 });
 
 

 
indexeddb 用法 作用域:整个浏览器,清除缓存不影响,除非调用delete 
 方法。使用方法如下: 
 var request=window.indexedDB.open("TestDB",1);
 request.οnerrοr=function(e){
     console.log(e.currentTarget.error.message);
 };
 request.onsuccess=function(e){
    myDB.db=e.target.result;
 };
 request.onupgradeneeded=function(e){
      var db=e.target.result;
      if(!db.objectStoreNames.contains('students')){
             db.createObjectStore('students',{autoIncrement: true});
      }
      console.log('DB version changed to '+version);
  };
 var datas=[{ 
           id:001, 
           name:"zhangsan"
        },{ 
            id:002, 
            name:"lisi"
        },{ 
            id:003, 
            name:"wangwu"
        }];
 var transaction=db.transaction(storeName,'readwrite'); 
 var store=transaction.objectStore(storeName); 
 for(var i=0;i<students.length;i++){
      store.add(datas[i]);
 }







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值