离线访问 \- SQLite 或索引数据库?

新手上路,请多包涵

我正处于开发应用程序的研发阶段,具有以下关键要求:

  • HTML5 网络应用程序——也将有一个混合版本
  • 当没有互联网连接时,表单数据将存储在本地

由于配额限制,我无法使用网络存储 - 我正在比较 SQLiteIndexed DB

  • SQLite 似乎最适合,但已弃用
  • Indexed DB 是一个很好的选择,但没有 Safari 支持——混合应用程序应该在 iPad 和未来的 Android 设备上运行。

我对API的选择感到困惑。 Safari 是否有其他替代 SQLite 或支持索引数据库的方法?

原文由 Taha 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 559
2 个回答

我认为放弃 IndexedDB 是个坏主意,因为它可能是未来的格式,所以 Safari 可能会停止支持 WebSQL。

似乎有各种 JavaScript 解决方案可以弥合两者之间的差距 - 保存在用户浏览器上可用的任何一个: JavaScript Library to Bridge IndexedDB and WebSQL 我认为这可能是您最好的解决方案。

原文由 Robin Winslow 发布,翻译遵循 CC BY-SA 3.0 许可协议

首先,被 W3C 弃用的是 WebSQL 而不是 SQLite

索引数据库 -

  • 它与许多类型的移动操作系统不兼容,仅与某些类型的移动操作系统版本兼容
  • 开发人员不能将 SQL 与 IndexedDB 一起使用。他们可以使用 SQLite 和 WebSQL
  • 大多数开发人员会尽可能地避免使用 IndexedDB

WebSQL-

  • 它已被 W3C 弃用,这意味着它不再维护或开发
  • 它需要另一个名为 Polyfill 的插件来使移动应用程序能够与流行的移动操作系统(如 Google Android 和 Apple iOS)一起工作

SQLite-

  • 它获得了谷歌的奖励
  • SQLite 有它的官方网站。 IndexedDB 和 WebSQL 没有
  • 在 Google 上,SQLite 返回 430 万个结果。 WebSQL 返回的结果略少于 700K,IndexedDB 返回的结果为 282K。

如果你想要一个关于 SQLite 的快速教程,

使用Android和Phonegap存储SQLite数据库

原文由 KershawRocks 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题