用例是在脱机时让应用程序在客户端存储数据。 建议使用Web SQL数据库(Chrome和Safari支持,不是FF),还是等待浏览器实现索引数据库API?是否建议在客户端使用Web SQL数据库进行存储
回答
如果您需要Firefox支持,那么显然没有。
因此,如果你的目标是移动互联网设备(智能手机),那么你可以使用网络SQL,因为大多数平台是WebKit或IE。 – Marc 2010-12-05 10:18:25
它看起来像WebSQL正在出路,被IndexedDB支持取代。 Firefox和Internet Explorer没有计划支持WebSQL,他们希望实现针对Firefox 4和IE9的IndexedDB。 Chrome正在忙于实现它,我相信Opera和Safari会跟风。
目前所有支持HTML5的浏览器(以及一些IE版本)都支持LocalStorage
这是一个只能存储字符串的简单键/值数据库,因此如果您需要更多结构化的存储功能,您必须等到今年(约)为广泛的IndexedDB支持。
我正在寻找一个结构化的存储,可能是CouchDB可能是现在的选择。 – rnella01 2010-06-10 13:44:40
CouchDB不会在浏览器(AFAIK)中运行,它是一种在服务器上运行的数据库技术,因此它不适用于HTML5 Offline Storage。 – 2010-06-11 14:44:11
“它看起来像WebSQL是在它的出路,被IndexedDB支持取代” 这是真的吗?我已经看到了一些有关该主题的讨论... http://sites.google.com/a/chromium.org/dev/developers/design-documents/indexeddb https://lists.webkit.org/ pipermail/webkit-dev/2010-January/011409.html ...但Google仅在1月25日宣布了Chrome Web SQL支持: http://blog.chromium.org/2010/01/more-resources-对于开发人员。html ... Safari自Safari 3.1和iPhone OS 2.0开始继续支持Web SQL: http://bit.ly/c7z1Pe – 2010-08-11 13:27:35
提出这个问题9个月后,Web SQL数据库“不再处于主动维护状态,Web应用程序工作组不打算进一步维护它”:http://en.wikipedia.org/wiki/Web_SQL_Database。
如果你正在开发明年发布的解决方案(特别是移动版),那么IndexedDB是更好的选择。如果您现在需要覆盖(不包括Firefox),则可以使用Web SQL数据库或将JSON对象序列化到LocalStorage中。
我现在把“将JSON对象序列化为LocalStorage”方法。一旦所有主要浏览器供应商都实施了IndexedDB方法,肯定会重新审视它。现在我发现这个很有用:http://goo.gl/kwaAU – rnella01 2011-01-27 17:05:57
这是一个较老的线程,但我想把我的2美分。截至今天,我们正在开发与现有的Web DB API的Safari的iOS Web应用程序。我还没有看到任何迹象表明Safari会在未来的版本中放弃这一点,但是由于这些应用必须今天在iPad上使用,我们正在计算风险,我们将准备转移到IndexedDB,如果/必要时。
我认为在这样的使用情况下(在线和离线混合使用),还需要考虑数据同步(在本地存储的脱机工作的结果与大概存储在服务器中的大量工作之间)主流在线案例)。显然,这两个选项都没有解决这个问题。
在我们的情况下,我们建立了一个javascript框架,在用户在线登录系统时负责同步。 – rnella01 2011-04-28 13:01:08
- 1. 客户端存储与Web SQL数据库
- 2. 客户端数据存储
- 3. Web架构的建议是:存储用户的数据
- 4. 使用PHP web后端的.NET桌面客户端的建议?
- 5. 从客户端创建SVN存储库。
- 6. 我是否正确使用WCF服务从客户端接收数据并将其存储在数据库中?
- 7. 如何在客户端使用SQLite存储在SQL Azure数据库中存储枚举?
- 8. 如何使用JavaScript在客户端创建文件进行存储?
- 9. 客户端数据库或数据存储
- 10. Silverlight客户端能否访问存储在独立存储中的本地sql压缩数据库
- 11. 使用Java客户端库创建Google Cloud Storage存储桶
- 12. 客户端 - 服务器数据存储
- 13. 存储数据客户端的框架
- 14. 客户端本地存储的数据
- 15. 如何存储数据客户端?
- 16. 谷歌appengine数据存储客户端
- 17. 永久存储数据在客户端使用ASP.Net
- 18. Sql Server客户端协议
- 19. 在客户端和服务器端进行数据验证是否更好?
- 20. 在JavaScript客户端中创建UUID是否有任何危险?
- 21. Phonegap存储,数据库是否存在
- 22. 在客户端使用Axis 1.4 + Web服务响应缓存进行缓存
- 23. 从Silverlight客户端访问SQL数据库(无Web项目)
- 24. Windows客户端与Web客户端
- 25. 如何确定使用.NET客户端是否存在Couchbase存储桶?
- 26. C#Web客户端内存使用
- 27. 用良好的稳定C++客户端在NOSQL数据库上的建议
- 28. 是否存在用于Cassandra的C语言客户端库?
- 29. 我可以在SVN客户端中使用GIT存储库吗?
- 30. 使用Angularjs加密客户端本地存储数据
我知道这有点晚,但对于未来的项目,请尝试:SequelSphere(www.sequelsphere.com)。 它是一个HTML5关系数据库引擎,它支持SQL并将其数据存储在本地持久性中。它不使用WebSQL数据库,而是使用它自己的SQL引擎。因此,它可以在任何符合JavaScript的浏览器中工作。虽然它目前仅支持本地存储,但SequelSphere最终还是会支持其他本地持久性引擎,如IndexedDB和File API。 完整披露:我与SequelSphere公司有关。 :) – 2012-11-07 13:35:16