IndexDB,WebSQL在4个月内
我有一个问题,我即将开始一个需要离线支持的4-6个月的项目。 AppCache非常棒,并被接受为标准,但大型浏览器仍未确定数据库的实现方式,Opera,Safari和Chrome选择了WebSQL(SQLite)和Mozilla,并且据称IE支持IndexDB。IndexDB,WebSQL在4个月内
我知道,Chrome也会在未来开发的INDEXDB选项,但我找不到任何的发行日期等
现在的任何信息,在4-6个月,让我们把它叫做十一月我想有支持大部分(不一定都是)最新版本的浏览器(假设IE9不支持,FF4和Chrome 6)的系统。我真的不想有一个indexdb/websql双重实现。使用localStorage作为一个很大的丑陋blob数据库的想法给了我震惊,我不想使用Gears。
你,我尊敬的同事推荐我做什么,我应该遵循什么路径?服用哪种药丸?
感谢所有
圭多
我的确会去(A.O.)的localStorage。我在今年早些时候写了一个这样的离线网络应用程序的概念证明(cfr this blogpost和offline-enabled webapp here),基本方法是;在阵列
每个字符串/ JSON的编组思想数据库更新所需的时间确实很难看。对于一个非常小的数据库也许可以,但是这对于大型数据集来说很快就会崩溃。 然而,我不喜欢这样,你可能是对的,这可能是最兼容的方法,我敢肯定可以采用'细分'方法来提高性能,但是为什么FireFox必须让我的生活如此艰难!!!!! – gatapia 2010-07-01 21:40:29
你是绝对正确的,这是一个丑陋的解决方案,但据我所知现在没有真正的选择。 一些杂项。位: *这不仅是mozilla反对webdb,ms不想实施sqlite或者 *原始支持者ms和mozilla将实现indexdb * * * * *他们可能也会跟着进行 *这些铬人正在处理indexdb(http://www.chromium.org/developers/design-documents/indexeddb),所以假设它最终会变成铬(也许safari,因为webkit会有很多工作) – futtta 2010-07-02 13:05:31
另一个相对充分证明的选择是Adobe Air。 http://www.adobe.com/products/air/
用在这里http://balsamiq.com/应用的实例,在这里http://www.tweetdeck.com/
不,这不是基于标准的,但它确实像你描述可能提供最好的开箱即用的功能,为应用程序。
我知道这有点晚,但对于未来的项目,您可以尝试SequelSphere。
这对市场来说是新的,但应该有希望涵盖这种类型的项目。它是一个支持SQL并将其数据存储在本地存储中的HTML5关系数据库引擎。它不使用WebSQL数据库,而是使用它自己的SQL引擎。因此,它可以在任何符合JavaScript的浏览器中使用(您的主要担忧之一)。但是,它目前仅支持本地存储作为持久性机制,因此大小可能会成为您的问题。我希望SequelSphere最终能够搭配其他本地持久性引擎,比如齿轮和闪光灯,但这并不是立即可用的。
完整披露:我与SequelSphere公司有关。 :)
有点更新,这个项目现在完成了,我最终建立了我自己的抽象层,如下所示:1)IndexedDB 2)Web SQL 3)Gears DB(以后备顺序)。它类似于lawnchair,但更灵活一点。这实际上很简单,并且工作得很好。如果我有范围,我希望还添加了闪存存储备用选项。我不支持本地存储,因为这有2.5MB的限制(在我的方案中没用) – gatapia 2010-10-08 22:41:57
gatapia,你是否已经发布了社区的抽象层? – 2011-05-24 19:52:31
@Peder赖斯,是的,我其实:[这里](https://github.com/PicNet/picnet_closure_repo/tree/master/src/pn/data) – gatapia 2011-06-02 19:32:02