javascript - 本地数据库 API - 已弃用 有什么替代方案?

标签 javascript html cordova sqlite indexeddb

基于 SQLite 的本地 DB api 即将关闭。根据w3c,它必须被替换为indexedDB。但 IndexedDB API 仍在进行中,因此尚未实现。 对于需要大量数据库存储的应用程序......暂时;还有什么选择呢?最有前途的证据是什么?

本地存储是不可行的,因为我需要存储结构化(关系)数据,而且是大量数据。 基于云的替代方案也超出了范围。我需要一些本地的东西。

最佳答案

我想说indexeddb 是正确的选择。 IE、FF 和 Chrome 都已经支持它,但对于移动设备来说它仍然是一个 hell 。我建议您暂时使用 websql,我认为phonegap 会继续支持它一段时间。

规范的问题是,没有标准的查询方法。每个 vendor 都使用 SQLite,但不能在一种产品上构建规范,这将是非常危险的。而且在大多数情况下,不同的数据库 vendor 意味着不同的 SQL 方言。这也与标准的工作方式相矛盾。这意味着您必须检查您正在使用哪个数据库,然后使用不同的方言。这就是为什么他们决定使用名为 indexeddb 的统一 API。

所有使用像SQL lite这样的数据库将数据存储在查询接口(interface)中的浏览器都是indexeddb API,所以从这个 Angular 来说indexeddb有点像odbc。只是它非常简单和纤薄。如果您想了解有关indexeddb的更多信息,请查看我的blog我有几篇关于它的博文。 This one是一个很好的开始。它解释了indexeddb的基础知识。

关于javascript - 本地数据库 API - 已弃用 有什么替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12596579/

相关文章:

javascript - 释放 JavaScript 事件处理程序

javascript - 尝试让工具提示示例发挥作用

javascript - <script> 元素在 SVG 文件和 HTML 文件中起作用吗?

javascript - Jquery addClass 导航不起作用

Jquery Mobile 按钮数据-mini

javascript - 当每个数组项都是函数调用时如何调用每个数组项

javascript - 静默组不在 javascript 正则表达式匹配中工作()

javascript - 当用户在弹出菜单外单击时,我应该隐藏弹出菜单吗

Android-Cordova 10.0.1 任务 :app:processDebugGoogleServices FAILED

android - 在适用于 Android 的 Windows 上安装 PhoneGap 3.3 (Eclipse)