JavaScriptを活用したWebアプリケーションを開発している際に、一時的に保存したいデータをどのように扱うかは大きな問題です。何となく変数や配列、ハッシュに保存してしまいがちですが、そのデータの取り出しや更新が面倒だったりします。 そこで使ってみたいのがAlasql.jsです。JavaScriptだけで作られたクライアントサイド向けのSQLデータベースになります。

Alasql.jsの使い方

使い方の例。データを配列で放り込んで、SQLで取り出せます。

デーブルの作成を含めてSQLが書けます。

データはlocalStrageに保存することもできるので、再読込時に復元も可能です。

Alasql.jsはHTML5仕様の中で検討されていたWeb SQLとは異なる実装で、オンメモリで動きます。高速で動作し、かつデータはlocalStrageに保存しておくこともできるので容量は小さいながらも永続化ができます。

使えるキーワードとして、SELECT/FROM/JOIN/WHERE/GROUP BY/HAVING/ORDER BY/LIMIT/OFFSET/UNION/UNION ALLといった選択系、INSERT/UPDATE/DELETE、CREATE/DROP TABLEも使えます。演算子としてSUM/COUNT/MAX/MIN/FIRST/LASTができます。

Alasql.jsはクライアントサイドはもちろん、nodeでサーバサイドにおける利用も可能となっています。トランザクションもサポートしていて、普通にデータベースとして利用できるレベルではないかと思います。

Alasql.jsはnode/JavaScript製のオープンソース・ソフトウェア(MIT License)です。

agershun/alasql