HTML5 LocalStorage & SQL
-
18-09-2019 - |
Frage
Ich verstehe, dass HTML5 "LocalStorage" a ist Schlüssel: Wertspeicher Aber ich frage mich, ob es eine JavaScript -Bibliothek gibt, die eine mehr bietet Sql-ish API?
Lösung
Kasse Wird HTML5 sql-frei sein? und DOM -Speicher: Ein Heilmittel für den gemeinsamen Keks für einige Links und Meinungen.
Andere Tipps
W3C -Datenbankspezifikation sagt:
Benutzeragenten müssen die implementieren SQL -Dialekt Unterstützt von SQLite 3.6.19.
Ab sofort, wenigstens Google Chrome unterstützt den SQL -Dialekt. Ich habe überprüft mich selbst.
Sie sollten den HTML5 -Datenbankspeicher verwenden (sie unterstützt SQL durch Transaktionen). Ein Tutorial hier: http://www.html5rocks.com/tutorials/webdatabase/todo/
HTML5 Lokaler Datenbankspeicher wird standardmäßig mit einer SQL -Schnittstelle geliefert, wenn ich mich nicht irre
Hier ist ein Webkit -Beitrag mit einigen Beispielen: http://webkit.org/blog/126/webkit-does-html5-client-side-database-storage/
Derzeit zwingt Chrome Sie dazu, Gears zu verwenden, was etwas unterschiedlich ist, aber immer noch SQL-basiert. Zukünftige Versionen von Chrome werden jedoch der HTML5 -Spezifikation folgen.
Versuche dies:http://kailashnadh.name/code/localstoragedb/
Du kannst es versuchen Alasql. Es unterstützt die Standard -SQL -Sprache und hält Daten im Speicher oder Lokalstor. Es gibt Sevelar -Wege, wie man Alasql mit LocalStorage verwendet. Im Folgenden können Sie sehen, wie Sie die Lokalstorage -Datenbank mit Namen "Atlas" erstellen, sie an Alasql als "Myatlas" anhängen, und dann können Sie wie jede andere Datenbank mit Tabellen arbeiten. Standardmäßig verwendet ALASQL AutoCommit im Modus und speichert Daten nach jeder SQL -Anweisung an LocalStorage.
Dies ist ein Beispiel:
alasql('CREATE localStorage DATABASE IF NOT EXISTS Atlas');
alasql('ATTACH localStorage DATABASE Atlas AS MyAtlas');
alasql('CREATE TABLE IF NOT EXISTS MyAtlas.City (city string, population number)');
alasql('SELECT * INTO MyAtlas.City FROM ?',[[{city:'Vienna', population:1731000},
{city:'Budapest', population:1728000}]]);
var res = alasql('SELECT * FROM MyAtlas.City');
Spielen Sie mit dieser Probe in jsfiddle. Führen Sie dieses Beispiel zwei- oder dreimal aus (oder neu laden), und Sie werden sehen, wie die Anzahl der Zeilen in der Tabelle wächst.