2010-06-08 46 views
11

用例是在脫機時讓應用程序在客戶端存儲數據。 建議使用Web SQL數據庫(Chrome和Safari支持,不是FF),還是等待瀏覽器實現索引數據庫API?是否建議在客戶端使用Web SQL數據庫進行存儲

+0

我知道這有點晚,但對於未來的項目,請嘗試:SequelSphere(www.sequelsphere.com)。 它是一個HTML5關係數據庫引擎,它支持SQL並將其數據存儲在本地持久性中。它不使用WebSQL數據庫,而是使用它自己的SQL引擎。因此,它可以在任何符合JavaScript的瀏覽器中工作。雖然它目前僅支持本地存儲,但SequelSphere最終還是會支持其他本地持久性引擎,如IndexedDB和File API。 完整披露:我與SequelSphere公司有關。 :) – 2012-11-07 13:35:16

回答

0

如果您需要Firefox支持,那麼顯然沒有。

+0

因此,如果你的目標是移動互聯網設備(智能手機),那麼你可以使用網絡SQL,因爲大多數平臺是WebKit或IE。 – Marc 2010-12-05 10:18:25

1

它看起來像WebSQL正在出路,被IndexedDB支持取代。 Firefox和Internet Explorer沒有計劃支持WebSQL,他們希望實現針對Firefox 4和IE9的IndexedDB。 Chrome正在忙於實現它,我相信Opera和Safari會跟風。

目前所有支持HTML5的瀏覽器(以及一些IE版本)都支持LocalStorage這是一個只能存儲字符串的簡單鍵/值數據庫,因此如果您需要更多結構化的存儲功能,您必須等到今年(約)爲廣泛的IndexedDB支持。

+0

我正在尋找一個結構化的存儲,可能是CouchDB可能是現在的選擇。 – rnella01 2010-06-10 13:44:40

+1

CouchDB不會在瀏覽器(AFAIK)中運行,它是一種在服務器上運行的數據庫技術,因此它不適用於HTML5 Offline Storage。 – 2010-06-11 14:44:11

+0

「它看起來像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

8

提出這個問題9個月後,Web SQL數據庫「不再處於主動維護狀態,Web應用程序工作組不打算進一步維護它」:http://en.wikipedia.org/wiki/Web_SQL_Database

如果你正在開發明年發佈的解決方案(特別是移動版),那麼IndexedDB是更好的選擇。如果您現在需要覆蓋(不包括Firefox),則可以使用Web SQL數據庫或將JSON對象序列化到LocalStorage中。

+1

我現在把「將JSON對象序列化爲LocalStorage」方法。一旦所有主要瀏覽器供應商都實施了IndexedDB方法,肯定會重新審視它。現在我發現這個很有用:http://goo.gl/kwaAU – rnella01 2011-01-27 17:05:57

2

這是一個較老的線程,但我想把我的2美分。截至今天,我們正在開發與現有的Web DB API的Safari的iOS Web應用程序。我還沒有看到任何跡象表明Safari會在未來的版本中放棄這一點,但是由於這些應用必須今天在iPad上使用,我們正在計算風險,我們將準備轉移到IndexedDB,如果/必要時。

+0

貌似現在在最新版本的瀏覽器中支持IndexedDB,現在可能是試驗它並分享一些經驗的時候了... – rnella01 2011-04-15 13:13:34

+0

@ mella01 indexeddb在當前的移動瀏覽器上不受支持。 (例外情況是黑莓10)。參考:http://caniuse.com/#search=indexeddb – oligofren 2013-08-06 08:04:33

1

我認爲在這樣的使用情況下(在線和離線混合使用),還需要考慮數據同步(在本地存儲的脫機工作的結果與大概存儲在服務器中的大量工作之間)主流在線案例)。顯然,這兩個選項都沒有解決這個問題。

+0

在我們的情況下,我們建立了一個javascript框架,在用戶在線登錄系統時負責同步。 – rnella01 2011-04-28 13:01:08

相關問題