【问题标题】:What Local Databases are avaliable for Javascript?哪些本地数据库可用于 Javascript?
【发布时间】:2011-06-30 11:13:13
【问题描述】:

我正在使用 POW 网络服务器在服务器端 Javascript (SJS) 中开发一个项目。该项目的结果将是一个供用户使用的本地应用程序,该应用程序将与一种答案和问题的“数据库”进行交互(就像一个测验生成器)。

实际上我们才刚刚开始,我们正在将信息存储到 JSON 文件中(POW 允许读取/写入普通文件),但我正在寻找一种更有效的方式来存储和调用数据库中的信息(类似于 SLQ )。

有没有可能使用 Javascript 来做到这一点?其中一个要求是用户不必安装数据库服务器(Mysql、Sqlite ecc),所以它应该是纯 Javascript 的方式,甚至是 XML-HTML5 的方式(我不会使用 WebDB 或类似的)。

【问题讨论】:

  • 该软件项目 (POW) 似乎处于非活动状态;它甚至可以与现代 Firefox 版本(例如 Mozilla 积极支持的安全更新等)一起使用吗? wiki 似乎完全是空的。也许我找到了错误的 URL,但我无法想象基于它的产品。
  • @Pointly :其实这也是我的观点,我正试图说服我的教授放弃它并继续使用其他解决方案......

标签: javascript xml database json html


【解决方案1】:

现代浏览器中有两个客户端数据库功能:IndexedDB 和 Web SQL。

各种浏览器的当前版本都没有完全支持,但 IndexedDB 似乎会胜出——Web SQL 显然不再被维护,可能会被完全删除。

您可以在CanIUse website 上找到有关它们的更多信息,以及它们各自的浏览器支持。

[编辑] 正如@Raynos 所提到的,还有LocalStorage,它实际上似乎比上面提到的其他两个具有更好的跨浏览器支持。鉴于浏览器支持(甚至 IE8 也支持!),这似乎是目前最好的选择,尽管它的功能不如上面的其他选项。

这是 LocalStorage 的 CanIUse details

希望对您有所帮助。

【讨论】:

  • 还有localStorage,它有一些可能性。
  • 在 IE6 和 IE7 中还有一些不知名的永久存储系统,称为 userData。真的虽然使用store.js
  • 感谢您的回复,但实际上这不是我要找的...无论如何,很棒的网站 CanIUse!谢谢分享:)
  • @Juan - 不用担心。但很高兴你发现 CanIUse 很有用——它绝对是目前此类事情可用的最佳资源之一(quirksmode.org 也不错,但现在有点过时了。对于检查旧 IE 兼容性的功能仍然有用,不过)。
【解决方案2】:

POW 提供对 SQLite DB 的简单访问,保存在 pow/data 文件夹中。 http://davidkellogg.com/wiki/Pow_db

【讨论】:

  • 谢谢,这正是我要找的 :)