ある業務システムのリプレースをしており、


Webアプリケーションかつ、ローカルデータベースを利用する必要があります。
(初回にデータベースから大量データを読み込み、あとはローカルで処理)

ローカルデータベースのデータは、検索条件の指定・範囲指定・ソート・JOINなどで
取得でき、JavaScriptで操作できるものが良いです。(必須ではありませんが)

その場合ローカルデータベースの選択肢としてどのようなものがあるでしょうか?

ブラウザはInternetExplorer8を使うことになりそうです。
(HTML5対応が進んでいるIE9も、お客様には提案しようと思いますが、関連システムがIE8前提で開発しているので、現状ではIE8が一番好ましいです。)

今後10年以上使うシステムであり、
あまり標準からはずれた技術は使いたくない
というお客様の要望もあります。

調べたところ、以下のような選択肢がありそうですが、
他にも良い方法があれば教えていただきたいです。

IE8
・GoogleGears(HTML5との互換性はどれぐらいあるのでしょうか?)

IE9
・Indexed Database(HTML5)

その他、MS Access等?

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/12/18 19:07:53
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:tama213 No.2

回答回数486ベストアンサー獲得回数30

ポイント35pt

Indexed Database(HTML5)を使うしかありません。

Google「Gears」終了を公式に説明 - HTML5への移行を推進

http://journal.mycom.co.jp/news/2010/02/22/009/index.html

となってますので、業界全体がHTML5への移行を目指してるとは思います。

現状では、

Safari 5/Google Chrome 7β/Opera 10.62はWeb SQL Databaseに対応していますが、Internet Explorer 9βとFirefox 4βは対応していません。


http://thinkit.co.jp/story/2010/10/22/1812

http://thinkit.co.jp/story/2010/10/29/1823

そんなに複雑でなければ、Web Storageを使う程度でよいかも。

id:kasshy666

ご回答ありがとうございます。

やはりそうですよね。

Web Storageってkey/value型なのと、ググってみると容量制限(2MB?)があるようなのですが、それ以上のデータを扱うことになりそうなので・・・。

だとすると、IE9でIndexed Databaseですよね。。

2010/12/16 15:58:52

その他の回答1件)

id:asuka645 No.1

回答回数856ベストアンサー獲得回数97

ポイント35pt

「Webアプリケーションかつ、ローカルデータベース」という意味が分かりません。

WebアプリがDBにアクセスするのではなく、クライアント(ローカル)にあるDBに直接アクセスするという意味ですか? クライアントの数だけDBがあるということですか?


そういうシステムは想定しにくいので、クライアントからDBサーバに直接アクセス(つまりクライアント/サーバ方式)という意味ですよね?


だとすると、「初回にデータベースから大量データを読み込み、あとはローカルで処理」というのは、本当にDBが必要ですか? サーバにXMLやCSV、テキストファイルを置いておく方が合理的ではありませんか?


ともかく状況がよく分からないので、コメント欄を開けておいていただけると、質疑応答が進めやすくなりますよ。

id:kasshy666

ご回答ありがとうございます。

※質問の意図がわかりにくくて申し訳ありません・・・。(コメント欄はオープンしました)

クライアントからDBサーバに直接アクセスするのは、初回の一回だけで、

あとは取得したデータをクライアント側で編集するようなイメージです。

「ローカルデータベース」というのはWeb StorageとかIndexed Databaseのような、ブラウザ組み込みのデータベースというイメージです。

その際、取得してきたデータを検索したりするので、ファイルではなくデータベースのほうが良いと思っています。また、JavaScript単体ではローカルファイルを操作できないなどの問題もあります。(HTML5のFileAPIなどではできるようですが)

2010/12/16 13:44:48
id:tama213 No.2

回答回数486ベストアンサー獲得回数30ここでベストアンサー

ポイント35pt

Indexed Database(HTML5)を使うしかありません。

Google「Gears」終了を公式に説明 - HTML5への移行を推進

http://journal.mycom.co.jp/news/2010/02/22/009/index.html

となってますので、業界全体がHTML5への移行を目指してるとは思います。

現状では、

Safari 5/Google Chrome 7β/Opera 10.62はWeb SQL Databaseに対応していますが、Internet Explorer 9βとFirefox 4βは対応していません。


http://thinkit.co.jp/story/2010/10/22/1812

http://thinkit.co.jp/story/2010/10/29/1823

そんなに複雑でなければ、Web Storageを使う程度でよいかも。

id:kasshy666

ご回答ありがとうございます。

やはりそうですよね。

Web Storageってkey/value型なのと、ググってみると容量制限(2MB?)があるようなのですが、それ以上のデータを扱うことになりそうなので・・・。

だとすると、IE9でIndexed Databaseですよね。。

2010/12/16 15:58:52
  • id:asuka645
    >クライアントからDBサーバに直接アクセスするのは、初回の一回だけで
    でしたら、なおのことDBを使う必然性はありませんね。
    インポートする時に同時にクライアントサイドで抽出すればいいので、XMLやCSV、テキストファイルを置いておけば十分です。Ajaxを使ってXMLファイルを抽出するのが標準的な方法でしょう。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません