本地数据库的基本概念
在HTML5中,添加了很多功能来将原本必须要保存在服务器上的数据转为保存在客户端本地,从而提高了Web应用程序的性能,减轻了服务器端的负担。在这其中,一项非常重要的功能就是数据库的本地存储功能。在HTML5中内置了一个可以通过SQL语言来访问的数据库。
现在,这种不需要存储在服务器上的,被称为“SQLLite”的文件型SQL数据库已经得到了广泛的利用,所以HTML5中也采用了这种数据库来作为本地数据库,要使用SQLLite数据库,编写JavaScript脚本的步骤包括:
- 创建访问数据库的对象;
- 使用事务处理。
首先,必须使用openDatabase()方法来创建一个访问数据库的对象,该方法的使用方法所下所示:
var db = openDatabase(dbName, verNo., desc, size);
该方法使用四个参数,第一个参数为数据库名,第二个参数为版本号,第三个参数为数据库的描述,第四个参数为数据库的大小。该方法返回创建后的数据库的访问对象,如果该数据库不存在,则创建该数据库。
实际访问数据库的时候,还需要调用transaction()方法,用来执行事务处理。使用事务处理,可以防止在对数据库进行访问及执行有关操作的时候受到外界打扰。因为在Web上,同时会有许多用户都在对页面进行访问。如果在访问数据库的过程中,正在操作的数据被别的用户给修改的话,会引起很多意想不到的后果。因此,可以使用事务来达到在操作完了之前,阻止别的用户访问数据库的目的。
transaction()方法的使用方法如下:
db.transaction(function(tx) { tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, Log)'); });
该方法使用一个回调函数为参数。在这个函数中,执行访问数据库的语句。
用executeSql来执行查询
executeSql()方法的完整定义如下:
transaction.executeSql(sqlquery, [], dataHandler, errorHandler);
该方法使用四个参数,第一个参数为需要执行的SQL语句;第二个参数为SQL语句中所有使用到的参数的数组。在executeSql()方法中,将SQL语句中所要使用到的参数先用“?”代替, 然后依次将这些参数组成数组放在第二个参数中,例如:
transaction.executeSql('UPDATE people SET age=? WHERE name=?;', [age, name]);
第三个参数为执行SQL语句成功时调用的回调函数。该回调函数的传递方法如下所示:
function dataHandler(transaction, results) { // 执行SQL语句成功时的处理。 }
该回调函数使用两个参数,第一个参数为transaction对象,第二个参数为执行查询操作时返回的查询到的结果数据集对象。
第四个参数为执行SQL语句出错时调用的回调函数。该回调函数的传递方法如下所示:
function errorHandler(transaction, errmsg) { // 执行SQL语句出错时的处理。 }
该回调函数使用两个参数,第一个参数为transaction对象,第二个参数为执行SQL语句发生错误时的错误信息文字。
结果数据集对象有一个rows属性,其中保存了查询到的每条记录,记录的条数可以用rows.length来获取。可以用for循环,用rows[index]或rows.Item([index])的形式来依次取出每条数据。在JavaScript脚本中,一般采用rows[index]的形式。
评论
发表评论
-
使用选择器在页面中插入内容
2011-11-08 10:09 0使用选择器来插入文字 使用选择器来插入内容 在CSS2中, ... -
HTML5 绘制图形【4】
2011-11-08 08:39 1667绘制变形图形 坐标变换 绘制图形的时候,我们可能会想要旋转 ... -
CSS3 选择器【2】
2011-11-07 14:30 1046UI元素状态伪类选择器 UI元素状态伪类选择器的共同特征是: ... -
HTML5 绘制图形【3】
2011-11-05 19:28 1280绘制渐变图形 渐变是指在填充时从一种颜色慢慢过渡到另外一种颜 ... -
CSS3 选择器【1】
2011-11-06 12:19 1668选择器概述 选择器是CS ... -
HTML5 绘制图形【2】
2011-11-04 11:42 1367使用路径 绘制圆形 要 ... -
HTML5 绘制图形【1】
2011-11-03 12:48 1454canvas元素基础 canvas元素是HTML5中新增的一 ... -
CSS3 模块化结构
2011-11-03 19:12 1458CSS3中的模块 模块名称 功能描述 Basi ... -
HTML5 获取地理位置信息
2011-11-01 18:12 5400Geolocation API的基本知识 在HTML5中,为 ... -
HTML5 使用Web Worker处理线程
2011-11-01 09:16 4600基础知识 Web Worker是在HTML5中新增的,用来在 ... -
HTML5 Web Sockets通信
2011-10-29 20:15 4045基础介绍 Web Sockets是HTML5提供的在Web应 ... -
HTML5 跨文档消息传输
2011-10-29 19:11 1970基本介绍 HTML5提供了在网页文档之间互相接收与发送信息的 ... -
HTML5 离线应用程序【2】
2011-10-27 20:48 1811applicationCache对象 application ... -
HTML5 离线应用程序【1】
2011-10-27 14:02 1513离线Web应用程序介绍 在HTML5中新增了一个API,为离 ... -
HTML5 Web Storage
2011-10-24 15:51 1561Web Storage简单使用 在HTML5中重新提供了一种 ... -
HTML5 多媒体播放【3】
2011-10-23 10:45 1208video元素和audio元素的方法 play()方法:使 ... -
HTML5 多媒体播放【2】
2011-10-22 21:14 1714音频和视频元素的属性 这两种元素所具有的属性大致相同,介绍如 ... -
HTML5 多媒体播放【1】
2011-10-21 18:58 892video与audio元素基础 在HTML5中,video元 ... -
HTML5 拖放API
2011-10-17 19:43 4931在HTML5中,已经支持在浏览器与其他应用程序之间的数据互相拖 ... -
HTML5 文件API
2011-10-16 18:49 4962在HTML5中,提供了一个关于文件操作的文件API,通过使用这 ...
相关推荐
使用HTML5的新特性,操作本地数据库,实现离线的本地存储
HTML5本地存储之数据库
纯属自娱自乐,利用html5本地sqllite数据库,实现自定义背景图片。
一套入门级别的HTML5数据教程 INDEXED db w3c标准下的数据库使用教程。
用HTML5本地数据库制作联系人,使用Chrome或Opera才能看到效果
在本地数据库中我们可以直接利用JavaScript创建数据库,并利用SQL语句执行相关的数据库操作。对于复杂的数据库,HTML5使用本地数据库进行操作,需要的朋友可以参考下
html5使用原生数据库有时候不大方便,所以有时会有使用安卓原生数据库的需求,这个是详细的实现,附带说明文档
HTML5-本地数据库
分步骤的登录注册表单现在也比较多,主要是能提高用户体验,用户可以有选择性的填写相应的表单信息,...今天和大家分享的就是一款基于HTML5和CSS3的分步骤注册登录表单,外观不用说,非常漂亮。你看一下DEMO就知道了。
可以实现html5直接连接SQLITE数据库{内附SQLITE可视化软件},利用浏览器打开html文件加javascript 直接对sqlite数据库进行插入 修改 删除 查询等功能,非常适合轻量化的系统设计,同时对于认识html5及本地数据库有...
在本文中,您将了解如何利用HTML5的离线功能和本地持久存储特性。示例应用程序说明了如何避免常见的问题。HTML版本5(HTML5)并不期望在2012年之前获得万维网联盟(W3C)推荐。尽管HTML5不是官方标准,但Web浏览器供应商...
JSORM 数据库! 在浏览器中! 使用 JavaScript! 谁不喜欢数据库? 不是我,我爱他们。 不能得到足够的他们。 当我不制作数据库时,我正在考虑使用数据库来构建数据库。 所以世界现在需要的是更多的数据库 ORM。 ...
NULL 博文链接:https://ch-kexin.iteye.com/blog/1278372
HTML5温蒂数据库
本地图片使用二进制流存储到MySQL中,然后响应前端的传参,查询后可以显示在HEML网页中,相当于图片的简单上传和显示
webstrange又分为:localstorage,sessionstorage和本地数据库。 接下来我就来一一介绍: 1、localstorage localstorage 的使用比较简单,方法有: 复制代码代码如下:localStorage.setItem(key,value);//保存数据...
仿安卓手机通讯录,利用html5本地数据库对数据进行增删改查,可通过Hbuilder打包成apk文件安装到手机,利用HTML5+规范的Contacts模块的plus.contacts.getAddressBook读取手机通讯录,讲读取内容导入到本地数据库
本例详细演示了数据库创建 表格创建 数据增删查改 删除表格各种功能