web-dev-qa-db-ja.com

JavaScriptからSQLiteデータベースにアクセスできますか?

HTMLファイルのセットとSQLiteデータベースがあり、file://スキームを使用して、ブラウザーからアクセスしたいと思います。 JavaScriptを使用してデータベースにアクセスし、クエリ(およびテーブル)を作成することは可能ですか?

78
Pal Szasz

実際、答えはイエスです。これを行う方法の例を次に示します。 http://html5doctor.com/introducing-web-sql-databases/

悪いことは、ブラウザによるサポートが非常に限られていることです。

詳細はこちら HTML5 IndexedDB、Web SQL Database、ブラウザwars

PS:@Christophが言ったように Web SQLはもはやアクティブなメンテナンスではなく、Webアプリケーションワーキンググループはそれをさらにメンテナンスするつもりはありません だからここを見てください https://developer.mozilla.org/en-US/docs/IndexedDB


編集

@clentfortが言ったように、SQL.jsを使用して、クライアント側のJavaScriptでSQLiteデータベースにアクセスできます。

36
Minko Gechev

SQL.js を使用できます。これは、JavaScriptにコンパイルされ、HTML5で導入されたローカルストレージにデータベースを格納するSQLite libです。 。

34
clentfort

最新の回答

Sql.jsのフォークは、 krikenのリポジトリの元のバージョン にマージされました。

適切なドキュメント も元のリポジトリで利用可能です。

元の回答(古い)

sql.js の新しいバージョンを使用する必要があります。これはsqlite 3.8の移植版であり、 優れたドキュメント を持ち、積極的に保守されています(私によって)。準備済みステートメントとBLOBデータ型をサポートしています。

19
lovasoa

HTML5の最も興味深い機能の1つは、データをローカルに保存し、アプリケーションをオフラインで実行できるようにする機能です。これらの機能を処理する3つの異なるAPIがあり、いずれを選択するかは、ローカルに保存する予定のデータをどのように処理するかによって異なります。

  1. Webストレージ:キー/値のペアを持つ基本的なローカルストレージ用
  2. オフラインストレージ:マニフェストを使用して、オフラインで使用するためにファイル全体をキャッシュします
  3. Webデータベース:リレーショナルデータベースストレージ用

詳細については、「 HTML5ストレージAPIの紹介 」を参照してください。

そして使い方

http://cookbooks.Adobe.com/post_Store_data_in_the_HTML5_SQLite_database-19115.html

4
Talha

私見、最良の方法は、Pythonを介してPOSTを使用してAJAXを呼び出し、Python内のDBで必要なすべての操作を実行し、結果をjavascript。 Pythonでのjsonおよびsqliteのサポートはすばらしく、わずかに最近のバージョンのPythonでも100%ビルトインされているため、「これをインストールしてインストール」という痛みはありません。 Pythonの場合:

import sqlite3
import json

...必要なのはそれだけです。すべてのPythonディストリビューションの一部です。

@Sedrick Jeffersonが例を求めたので、(多少遅々として)私は ここでJavascriptとPythonの間のスタンドアロンの前後 =を書きました。

4
fyngyrz

PouchDBのようなものを使用するのはどうですか? http://pouchdb.com/

2
theamoeba