web-dev-qa-db-ja.com

Web SQLまたはIndexedDBをいつ使用する必要がありますか?ユースケースは何ですか?

最近、ブラウザが提供するWebSQLとIndexedDBに出くわしました。これらが使えるユースケースを理解したい。

10
Utsav Sinha

Web SQLは、 https://www.w3.org/TR/webdatabase/ ごとに非推奨になりました。

サーバー側に保存しない構造化されたクライアント固有のデータを保存する必要がある場合、またはサーバーから毎回要求したくない場合は、IndexedDBを使用できます。

また、localStorageとは対照的に、IndexedDBは非同期であるため、パフォーマンスが向上します。インデックス作成をサポートしているため、単なるKey-ValueストアであるlocalStorageよりも効率的なクエリが可能です。ただし、ニーズが単純な場合は、localStorageの方が適している可能性があります。

ここ は、さまざまなWebストレージオプションについて説明しているリンクです。 ここ は、プログレッシブWebアプリでIndexedDBを使用する方法についてのチュートリアルです。

15
Hakan

ここに行く前に; 親切に注意:Web SQLデータベース

  • 2010年11月以降非推奨の仕様です

、ブラウザベンダーは、このテクノロジをサポートすることを推奨されていません。これを読んでいる人は誰でも、この事実を理解して実践することが重要です。詳細については ここ を確認してください...

ここで、質問の他の重要なセグメントに戻ります。

IndexDBのユースケースといつ行うか?

つまり;

IndexDbを使用すると、オブジェクトや配列など、JavaScriptタイプのデータをシリアル化せずに保存できます。データベースに対するすべてのリクエストは非同期であるため、リクエストが完了するとコールバックを受け取ります。

他の典型的でありながら強力なユースケースは次のとおりです。ネットワークが利用可能なときにデータを同期しながらオフラインで動作する必要があるアプリケーション。有名な例は Wunderlist で、オフラインでもタスクを追加および編集できます。これらの操作は同期キューに入れられ、ネットワークが再び利用可能になると処理されて空になります。

うまくいけば、それはあなたがそれをどのように表現したかに従ってあなたの質問に答えました