ブラウザで動くSQL学習環境 SQL TRYを公開しました

はじめに
皆さんはSQLを学んだり、練習したりするとき、どんなツールを使っていますか?
私はこれまで、手軽にSQLを試せる環境を探していました。ローカル環境にMySQLやPostgreSQLをインストールするのは手間だし、オンラインのSQL学習サイトは機能が制限されることも。
そんな課題を解決するために作ったのが、SQL TRYというWebサービスです。
SQL TRYとは?
SQL TRYは、ブラウザだけで動作するSQLの学習・テスト環境です。
サーバーの構築も、ツールのインストールも不要。ブラウザを開くだけで、すぐにSQLを書いて実行できます。
https://inoue-web.work/creative/sql-try
主な機能
サーバー不要で即利用可能
sql.js(SQLiteをWebAssemblyにコンパイルしたもの)を活用しているため、サーバー側の処理が一切不要です。HTMLファイルをブラウザで開くだけで動作します。
MySQL・PostgreSQL構文にも対応
内部的にはSQLiteで動作していますが、MySQLやPostgreSQLの構文で書いたSQLも自動的に変換して実行できます。
変換ルールを確認する「Explain」機能もあり、各DBMSの構文の違いを学ぶのにも便利です。
サンプルデータセットを搭載
4種類のサンプルデータセット(Eコマース、会社人事、図書館、Webアナリティクス)がプリセットされているので、データの準備なしでいきなりSQL練習を始められます。
CSV/SQLファイルのインポート・エクスポート
CSVファイルをドラッグ&ドロップすると、テーブル定義とINSERT文を自動生成して実行できます。作成したデータベースもCSVやSQLファイルとしてエクスポート可能です。
データの永続化
ブラウザのローカルストレージにデータベースの状態を保存できます。最大10件のスナップショットを保存し、いつでも途中の状態から作業を再開できます
技術スタック
| 技術 | 用途 |
|---|---|
| sql.js (SQLite WebAssembly) | SQLエンジン |
| Vanilla JavaScript | アプリケーションロジック |
| HTML/CSS | UI(ダークテーマ) |
フロントエンドフレームワークは使っていません。シンプルに、ブラウザの標準機能だけで実現しています。
どのような場面で使いやすい?
- SQLを勉強し始めた方: セットアップの手間なく、すぐに練習を始められます
- 業務でSQLを書く方: 複雑なクエリを手軽にテストできます
- DBMSの構文を比較したい方: MySQL/PostgreSQL/SQLiteの違いを確認できます
- データを扱ってみたい方: CSVから簡単にテーブルを作成して実験できます
今後の展望
現時点では基本機能のみですが、以下の改善を検討しています:
- テーブル間のリレーション(外部キー)の可視化
- より多くのサンプルデータセット
- クエリの共有機能
- モバイル対応の改善
お試しください
SQL TRYは下記のURLからお試しいただけます。サーバーの準備やツールのインストールは不要です。
https://inoue-web.work/creative/sql-try
もし使っていただいて気づいた点や、リクエストがありましたら、お気軽にフィードバックをお寄せください。