楼主: jerker
2182 14

[讨论交流] [索引数据库 IndexedDB]HTML5 IndexedDB [推广有奖]

学术权威

80%

还不是VIP/贵宾

-

TA的文库  其他...

数据科学(Data Science)

威望
6
论坛币
50724 个
通用积分
3498.8153
学术水平
3272 点
热心指数
3508 点
信用等级
3023 点
经验
406 点
帖子
5811
精华
28
在线时间
3530 小时
注册时间
2009-11-19
最后登录
2024-3-27

初级学术勋章 中级热心勋章 初级热心勋章 初级信用勋章 中级学术勋章 高级学术勋章 特级学术勋章 高级热心勋章 特级热心勋章 中级信用勋章 高级信用勋章 特级信用勋章

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
    QQ截图20150415001625.png
    索引数据库 (IndexedDB) API(作为 HTML5 的一部分)对创建具有丰富本地存储数据的数据密集型的离线 HTML5 Web 应用程序很有用。同时它还有助于本地缓存数据,使传统在线 Web 应用程序(比如移动 Web 应用程序)能够更快地运行和响应。本文将介绍如何管理 IndexedDB 数据库。
HTML5 的一个重要特性是本地数据持久性,它使用户能够在线和离线访问 Web 应用程序。此外,本地数据持久性使移动应用程序更灵敏,使用的带宽更少,而且能够在低带宽场景中更高效地工作。HTML5 提供了一些本地数据持久性选项。第一个选项是 localstorage,它支持您使用一个简单的键值对来存储数据。IndexedDB(一个更加强大的选项)支持您本地存储大量对象,并使用健壮的数据访问机制检索数据。
IndexedDB API 取代了 Web Storage API,后者在 HTML5 规范中已不推荐使用。(但一些领先的浏览器仍然支持 Web Storage,其中包括苹果公司的 Safari 和 Opera Web 浏览器)与 Web Storage 相比,IndexedDB 具有多个优势,其中包括索引、事务处理和健壮的查询功能。本文将通过一系列的示例来展示如何管理 IndexedDB 数据库。
重要概念
一个网站可能有一个或多个 IndexedDB 数据库,每个数据库必须具有惟一的名称。
一个数据库可包含一个或多个对象存储。一个对象存储(由一个名称惟一标识)是一个记录集合。每个记录有一个键 和一个值。该值是一个对象,可拥有一个或多个属性。键可能基于某个键生成器,从一个键路径衍生出来,或者是显式设置。一个键生成器自动生成惟一的连续正整数。键路径定义了键值的路径。它可以是单个 JavaScript 标识符或多个由句点分隔的标识符。
规范中包含一个异步 API 和一个同步 API。同步 API 用于 Web 浏览器中。异步 API 使用请求和回调。
在以下示例中,输出附加到一个具有 ID result 的 div 标记上。要更新 result 元素,可在每个数据操作期间清除并设置 innerHTML 属性。每个示例 JavaScript 函数由 HTML 按钮的一个 onclick 事件调用。
使用数据库
一个数据库一次只能有一个版本。在首次创建数据库时,它的初始版本编号为 0。创建数据库之后,数据库(和它的对象存储)只能通过一种称为 versionchange 的特殊类型的事务来更改。要在创建数据库后更改它,必须打开具有更高版本的数据库。此操作会触发 upgradeneeded 事件。修改数据库或对象存储的代码必须位于 upgradeneeded 事件处理函数中。
使用索引
除了使用键来检索对象存储中的记录,还可使用代索引的字段来检索记录。对象存储可具有一个或多个索引。索引是一种特殊的对象存储,它引用包含数据的对象存储,在更改所引用的对象存储时(也就是添加、修改或删除记录时)自动更新。
要创建一个索引,必须使用 清单 5 中所示的方法对数据库进行版本控制。索引可以是惟一的,也可以是不惟一的。惟一索引要求索引中的所有值都是惟一的,比如使用一个电子邮件地址字段。当某个值可以重复出现时,需要使用非惟一索引,比如城市、州或国家。
使用事务
您需要使用事务在对象存储上执行所有读取和写入操作。类似于关系数据库中的事务的工作原理,IndexedDB 事务提供了数据库写入操作的一个原子集合,这个集合要么完全提交,要么完全不提交。IndexedDB 事务还拥有数据库操作的一个中止和提交工具。
更多详情,请:

本帖隐藏的内容

使用 IndexedDB.docx (78.88 KB)
使用 HTML5 IndexedDB API.docx (62.92 KB)





二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Indexed Index HTML5 HTML DDB HTML5

已有 3 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
kychan + 100 + 5 + 5 + 5 精彩帖子
oink-oink + 5 精彩帖子
fantuanxiaot + 70 + 60 + 1 + 1 + 1 精彩帖子

总评分: 经验 + 170  论坛币 + 60  学术水平 + 6  热心指数 + 11  信用等级 + 6   查看全部评分

本帖被以下文库推荐

沙发
auirzxp 学生认证  发表于 2015-4-15 00:49:23 |只看作者 |坛友微信交流群

使用道具

藤椅
rrjj101022 发表于 2015-4-15 08:17:00 |只看作者 |坛友微信交流群
谢谢分享~~~

使用道具

板凳
oink-oink 发表于 2015-4-15 11:19:53 |只看作者 |坛友微信交流群
已有 1 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
jerker + 24 + 5 + 1 + 1 + 1 精彩帖子

总评分: 经验 + 24  论坛币 + 5  学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

使用道具

报纸
sunyiping 发表于 2015-4-15 11:33:46 |只看作者 |坛友微信交流群
学习学习.

使用道具

地板
jerker 发表于 2015-4-15 11:36:03 |只看作者 |坛友微信交流群
sunyiping 发表于 2015-4-15 11:33
学习学习.
欢迎常来分享心得体会

使用道具

7
sunyiping 发表于 2015-4-15 12:02:42 |只看作者 |坛友微信交流群
遵命,谢谢!
已有 1 人评分经验 论坛币 收起 理由
fantuanxiaot + 20 + 10 鼓励积极分析资源

总评分: 经验 + 20  论坛币 + 10   查看全部评分

使用道具

8
Yoto0282 发表于 2015-4-15 14:48:42 |只看作者 |坛友微信交流群
Thank you for sharing!!

使用道具

9
jerker 发表于 2015-4-15 15:08:39 |只看作者 |坛友微信交流群
Yoto0282 发表于 2015-4-15 14:48
Thank you for sharing!!
you are welcome!

使用道具

10
kychan 学生认证  发表于 2015-4-15 17:52:02 |只看作者 |坛友微信交流群
我也有用过这.. great tool
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
jerker + 5 + 4 + 4 + 4 精彩帖子

总评分: 论坛币 + 5  学术水平 + 4  热心指数 + 4  信用等级 + 4   查看全部评分

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jr
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-10 23:51