0

0

HTML5中Web Sql的学习小结

青灯夜游

青灯夜游

发布时间:2018-11-13 09:35:23

|

3380人浏览过

|

来源于博客园

转载

本篇文章给大家带来的内容是介绍html5的web sql学习小结,让大家了解一些web sql的相关知识。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

在web系统或应用中,经常需要在本地存储一些数据,最早的在客户端存储数据用的是cookie(当然cookie主要还是用来保存用户的状态,业余可以干点保存本地数据的活),事实它并不适合用于保存客户端的本地数据,有以下几个原因:

1、每次请求服务器的时候都会增加不必要的流量消耗,因为每次请求服务器是都会讲cookie发送至服务器。

2、cookie的数据存储数据的规则,并不那么好用,结构也不够清晰。

3、最重要的一点是cookie的存储容量极小,每个cookie的长度不能超过4kb,超过时最早存储cookie的数据会被截掉超出的大小,显然是不太够用的。

立即学习前端免费学习笔记(深入)”;

随着HTML5的发展,后来又出现了localStorage与sessionStorage:

localStorage:永久存储,无论多久再次进入页面或者页面所在站点(可以使用clearI或removeItem方法删除),都能获取到存储的数据。

sessionStorage:临时存储,当关闭页面的时候会自动清除保存的数据。

事实上在平时工作或开发自己项目的时候,这两个用的是最多,至少目前这两个对象还是可以满足大部分项目本地存储的需求,虽然储存结构依然不够清晰,查询本地存储的数据上依然过于简单。

现在主要是总结一下,HTML5中新增的API-->Web Sql本地数据库技术,Web Sql数据库API实际上不是HTML5规范的组成部分,它是一个独立的规范,它可以使用与sql语言基本一致的语法做到本地数据库的增删改查,所以有后端开发经验的开发者很容易上手(需要指出的是,HTML5已经放弃了Web Sql Database数据库,该规范的指定工作已经停止),即便如此,基本上已经得到了大多数浏览器的支持。现在我们来介绍一下它的使用:

创建一个WebSql数据库:

openDatabase(数据库名,数据库版本号,描述,数据库大小,数据库创建成功的回调);
var mydb = openDatabase('myTeatDatabase',1,'this a Web Sql Database',1024*1024,function(){
     //数据库创建成功的回调,可省略
});

注:该方法返回一个数据库访问对象,当创建的数据库已经存在的时候,该 方法直接打开这个数据库。

创建一个事务:

mydb.transaction(function(tx){
    //该方法有一个事务对象参数供使用,该对象上有一系列为数据库增删改查的方法。
});

 执行一段操作:

微厦在线学习培训系统2.0
微厦在线学习培训系统2.0

《微厦在线学习考试系统》将“ 视频学习、试题练习、在线考试 ”紧密相联,打造成为集 “学、练、考” 于一体的在线学习系统。“点播/直播”、“刷题/测试”、“组卷/考试”,根据学习内容的不同权重汇总综合成绩,生成学习证明。支持在线支付(微信支付、支付宝支付);利用充值卡、学习卡配合线下营销;Web端、APP、小程序,多终端方便学习。适用:大学、中职中专、培训机构、企事业单位行业:企业内训、成人教育、

下载
tx.executeSql(执行数据库操作的sql语句,参数,数据库操作执行成功的回调,数据库操作执行失败的回调);

具体的数据库操作:

创建一个数据表:

tx.executeSql('create table if not exists table1 (id unique,name)', [], function(tx, result) { 
	//成功回调
	},function(error){
         //失败回调
	});

注:这条语句的意思是创建一个数据表table1,当数据库中不存在这张表的时候,如果语句中不加上"if not exists"的话,当想要创建的数据表在数据库中已经存在的时候会报错。

删除一个数据表:

tx.exexcteSql('drop table table1',[],function(tx,result){
      //删除成功时的回调
      },function(error){ 
         //删除失败时的回调
      });

在数据表中添加一条数据:

tx.executeSql('insert into table1 (id,name) values (1,'小明')',[],function(tx,result){
            //添加数据成功时的回调
            },function(error){
                  //添加数据失败时的回调
            });

删除数据表中的一条或多条数据:

tx.executeSql('delete from table1 where id=1',[],function(tx,result){
//删除成功时的回调
},function(error){
    //删除失败时的回调
});

或:

tx.executeSql('delete from table1 where id=?',[1],function(tx,result){
//删除成功时的回调
},function(error){
    //删除失败时的回调
});

更新数据库表里面的一条数据:       

tx.executeSql('updata table1 set name="小红" where id=1',[],function(tx,result){
   //数据更新成功时的回调
   },function(error){
       //数据更新失败时的回调
   });

查询满足查询条件的数据:     

tx.executeSql('select * from table',[],function(tx,result){
//查询成功时的回调
},function(error){
  //查询失败时的回调
});

注:查询成功的时候可以通过回调函数中的result参数的rows属性使用查询返回的数据。

这个例子只是最简单的一种查询语句,如果有更多复杂查询的需求的话可以参考sql语句。

总结:

  简单的总结一下,其实这个数据库API是比较简单,所有的增删改查都需要创建一个事务,在事务对象上执行所有操作,目前该API暂时不支持删除整个数据库,但是我们可以通过删除那个数据库里面的所有数据表来清空该数据库,以达到类似效果。

相关文章

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
高德地图升级方法汇总
高德地图升级方法汇总

本专题整合了高德地图升级相关教程,阅读专题下面的文章了解更多详细内容。

72

2026.01.16

全民K歌得高分教程大全
全民K歌得高分教程大全

本专题整合了全民K歌得高分技巧汇总,阅读专题下面的文章了解更多详细内容。

132

2026.01.16

C++ 单元测试与代码质量保障
C++ 单元测试与代码质量保障

本专题系统讲解 C++ 在单元测试与代码质量保障方面的实战方法,包括测试驱动开发理念、Google Test/Google Mock 的使用、测试用例设计、边界条件验证、持续集成中的自动化测试流程,以及常见代码质量问题的发现与修复。通过工程化示例,帮助开发者建立 可测试、可维护、高质量的 C++ 项目体系。

54

2026.01.16

java数据库连接教程大全
java数据库连接教程大全

本专题整合了java数据库连接相关教程,阅读专题下面的文章了解更多详细内容。

39

2026.01.15

Java音频处理教程汇总
Java音频处理教程汇总

本专题整合了java音频处理教程大全,阅读专题下面的文章了解更多详细内容。

19

2026.01.15

windows查看wifi密码教程大全
windows查看wifi密码教程大全

本专题整合了windows查看wifi密码教程大全,阅读专题下面的文章了解更多详细内容。

85

2026.01.15

浏览器缓存清理方法汇总
浏览器缓存清理方法汇总

本专题整合了浏览器缓存清理教程汇总,阅读专题下面的文章了解更多详细内容。

43

2026.01.15

ps图片相关教程汇总
ps图片相关教程汇总

本专题整合了ps图片设置相关教程合集,阅读专题下面的文章了解更多详细内容。

11

2026.01.15

ppt一键生成相关合集
ppt一键生成相关合集

本专题整合了ppt一键生成相关教程汇总,阅读专题下面的的文章了解更多详细内容。

49

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
CSS3 教程
CSS3 教程

共18课时 | 4.6万人学习

Django 教程
Django 教程

共28课时 | 3.2万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号