Html5 Web database存储和本地数据库操作

HTML5储存数据有两种方法:webDatabase(数据库形式)  和  webStorage(cookie形式)

WebStorage(客户端存取数据),也有两种方法:localStorage[持久化的储存方式] 和 sessionStorag(基于session方式的数据储存[会话级别的数据储存方式]) 

sessionStorage设置和获取数据:

1 设置 :  window.sessionStorage.setItem('key','value');
2 
3 获取 :  console.log(window.sessionStorage.getItem('key'));// 输出value

另外一种设置和获取数据的方法:

1 设置:    window.sessionStorage.hello='world'; 
3 获取:    console.log(window.sessionStorage.hello); //输出world

   

localStorage设置和获取数据:

1 设置: window.localStorage.setItem('name','webStorage');
2 获取 : console.log(window.localStorage.getItem('name')); //输出webStorage

另外一种设置和获取数据的方法:

1 设置:    window.localStorage.hello='world';
2 获取:    console.log(window.localStorage.hello); //输出world

WebStorage对象的方法和属性:

从接口文件可以看到:

Length属性:获取webstorage对象的键值对数量

console.log(window.sessionStorage.length);

Key(index):获取webstorage对象的索引键

console.log(window.sessionStorage.key(0));

setItem(key,value) :设置一对键值对

getItem(key):根据一个键获取对应的值

removeItem(key):删除对应的键的键值对

window.sessionStorage.removeItem('hello');

clear();清除全部的键值对.

window.sessionStorage.clear()

WebStorage事件监测 ( 事件通知机制 )   监听当数据发生变化的时候所触发的事件.监听同源窗口的事件.

1 Window.addEventListener(‘storage’,storageEvent ,true)
2 function storageEvent(event){
3     console.log(‘key=’+event.key+’oldValue=’+event.oldValue+’newValue=’+event.newValue+’olurl=’+event.url+’storageArea+event.storageArea);
 }

Web Sql数据库 创建本地数据库

Html5 数据库 API 是以一个独立规范形式出现的 , 它包括三个独立方法

openDatabase : 使用现有数据库或创建新数据库的方式创建数据库对象

transaction : 允许用户根据情况控制事务提交或回滚

executeSql : 用于执行真实的SQL查询

使用js编写sqlLite数据库有两个步骤:

         1 – 创建访问数据库的对象

         2 – 使用事务处理 

下面是一个简单的再本地创建数据库的一个例子代码

 1 window.onload=function(){
 2             var db=openDatabase('dbname','1.0','this is a string',5*1014*1024);
 3 
 4             if(!db){
 5                 console.log('创建数据库失败!');
 6             }
 7             
 8             db.transaction(function(obj){
 9             
10             obj.executeSql('create table blog (id,name,title)');
11             
12             obj.executeSql("insert into blog (id,name,title) values (1,'php','my nam e is a php')");
13             
14             obj.executeSql("insert into blog (id,name,title) values (2,'html5','my nam e is a html5')");
15             
16                //var msg='';
17             
18                console.log('表和表数据的创建和插入');
19                 
20             });
21 
22 
23             /** get the SqlData **/
24             db.transaction(function(obj){
25                 
26                 obj.executeSql("select * from blog",[],function(obj,result){
27                 
28                     
29                     
30                     var l=result.rows.length,i;//获取数据结果集的行数长度    和定义一个变量 i
31                         
32                     document.querySelector('.tab').innerHTML='表中的结果集中有'+l+'行数据';
33                     
34                     // item(index)方法是rows对象中的一个属性,index为索引值
35                     for(i=0;i<l;i=i+1){
36                         console.log(result.rows.item(i).name);//ouput php html5
37                     }
38                     
39                 })
40                         
41                     
42             });
43 
44             
45 }

 

posted @ 2014-09-19 10:33  宇宙第一小菜鸟  阅读(755)  评论(0编辑  收藏  举报