Zum Hauptinhalt Zur Navigation Zur Suche

SQL.js: SQLite in Javascript

Emscripten-Entwickler Alon Zakai hat mit SQL.js die freie SQL-Datenbank SQLite in einer Javascript-Version veröffentlicht. Die Umsetzung erfolgte mit Emscripten.
/ Jens Ihlenfeld
25 Kommentare Auf Google folgen (öffnet im neuen Fenster)
Alon Zakai präsentiert Emscripten. (Bild: JSConf.eu)
Alon Zakai präsentiert Emscripten. Bild: JSConf.eu

SQL.js ist komplett in Javascript realisiert und stellt eine funktionierende Version von SQLite im Browser zur Verfügung. Dahinter steckt der mittlerweile bei Mozilla angestellte Alon Zakai. Er übersetzte den C-Code von SQLite mit Hilfe des von ihm entwickelten Werkzeugs Emscripten, das von LLVM erzeugten Bytecode in Javascript umwandelt.

Zakai verzichtet darauf, SQL.js in ein Closure zu kapseln, da dies die Ausführung in manchen Javascript-Engines verlangsamt. Auch unterstützt die aktuelle Version noch keine persistente Datenspeicherung. Wird ein Browserfenster geschlossen, gehen auch die in der Datenbank abgelegten Daten verloren.

Mit einer Erweiterung um persistente Datenspeicherung mittels IndexedDB wäre es aber möglich, auf diesem Weg einen sogenannten Polyfill für WebSQL zu bauen. WebSQL wurde vom W3C aufgegeben, so mancher Entwickler trauert einer einfachen SQL-Datenbank, die im Browser läuft, aber nach.

SQL.js steht unter der MIT-Lizenz, während SQLite selbst Public Domain ist. Der Code steht auf Github bereit(öffnet im neuen Fenster).

Zee.js

In Zakais Github-Repository findet sich seit kurzem auch Zee.js(öffnet im neuen Fenster), eine Javascript-Umsetzung der Bibliothek zlib, die Zakai mit Hilfe von Emscripten vorgenommen hat.


Relevante Themen