2

ブラウザで開く USB スティックに何らかの Web サイトを作成したいと考えています。HTML ファイルは、javascript を使用して同じフォルダー内の (sql-) データベースを読み取ることができる必要があります。私にとってはちょっとしたアプリです。これらは私のファイルです:

USB stick:
-- start.html
-- database.sql

HTML5 は「ローカル ストレージ」を提供し、完全に機能します。しかし、この方法では、スティック上のローカルの既存のデータベースにアクセスできません。ブラウザーは別の空のデータベースを作成し、それをスティックではなく保存します。データセットを書く必要はありません。

データベースを読み取る別の方法はありますか? ありがとう!

4

4 に答える 4

1

JavaScript に変換された SQLite であるsql.jsを使用できます。ただし、独自のインポート/エクスポート機能を提供する必要があります。当然、JS のファイルシステムにエクスポートすることはできませんが、読み取りのみを目的としているため、問題にはなりません。

于 2012-07-29T21:52:10.153 に答える
0

Web ブラウザで SQL クエリを実行することはできません。あなたができる最善のことは、ローカルファイルから ajax を使用してデータをロードすることです。ただし、更新されたデータベースをローカル ファイル システムに保存することはできません。

JavaScript でカンマ区切りのデータを読み取るか、データを xml または json に保存することができます。

ただし、データを保存したい場合は、デスクトップアプリケーションが必要だと思います

于 2012-07-29T21:47:59.053 に答える
0

読み取り専用の場合は、javascript を使用してファイルを読み取って解析するだけで済みます。ただし、SQL ファイルではなく、代わりに JSON を含むファイルを使用します。SQL を読める JavaScript ライブラリはないと思いますし、それを書くのも簡単ではありません。

ただし、ファイルを見つけたとしても、ファイルの内容はすべてメモリに読み込まれ、ファイルに書き込むことはできないことに注意してください。

ローカルで実行されるデータベース アプリケーションが必要なため、HTML や Javascript を使用するのではなく、データベースを読み取って適切なメモリ管理を行うことができる Java またはネイティブ言語を使用することを心からお勧めします。必要に応じて、GUI 用に HTML/JS に固執することもできますが、HTML を完全に除外するのと同じくらい簡単であることに気付くかもしれません。

あなたが今欲しいものは、非常にまれです。データベース アプリケーションにはバックエンドがあり、Web サイトは USB スティックから実行されない傾向があります。

于 2012-07-29T21:48:55.627 に答える
0

The problem is that local storage is local to the system the browser is running on because it's local to the browser not from where the files originated.

This means you'll have to deliver the data to the browser for it to store the data locally. Right now your data is located on your stick.

You have a couple of options: 1. Deliver the data to the browser to create your local storage database via javascript. 2. Use Rob W's answer and supply a portable browser (good idea Rob!)

I've made no assumptions how the data is stored in your .sql file. If it's actually SQL, you're out of luck. Localstorage is not a sql database.

Good Article on the basics of local storage in HTML5 http://diveintohtml5.info/storage.html

于 2012-07-29T21:59:31.693 に答える