使い方
- app.sqliteテーブルとスキーマ
DB ファイルを開く
- SELECT の結果並べ替え・絞り込み
SQL を実行して表を見る
- 結果.csvDB 全体は .sqlite
CSV・Excel・JSON で書き出す
.sqlite / .sqlite3 / .db ファイルをドロップするか「ファイルを開く」で選びます。試すだけなら「サンプル DB で試す」、一から作るなら「空のデータベースを作る」を押します。
左の一覧でテーブルやビューを選ぶと、中身が「データ」に出ます。列名を押すと並べ替え、絞り込み欄に文字を入れると、どの列にも含まれる行だけに絞れます。「スキーマ」では列と CREATE 文を確認できます。
「クエリ」に SQL を書いて「実行」(Ctrl + Enter)。複数の文は ; で区切ります。EXPLAIN QUERY PLAN で実行計画も見られます。エラーは何文目・何行目・何列目かが出て、押すと該当位置へ移動します。
CSV・TSV・Excel(.xlsx)は「CSV・Excel を表に取り込む」でテーブルにでき、SQL で検索・集計できます。
結果は CSV・Excel・JSON で書き出せます。データベース全体は「データベースを保存(.sqlite)」、SQL 文としては「SQL ダンプ(.sql)」で保存します。
できること
データは端末の外へ送らない
SQLite(公式の C ソースを wasm にした sql.js 1.15.0。SQLite 3.54)をこのページのブラウザ内で動かします。データベースはブラウザのメモリ上にだけあり、サーバーへの送信はありません。wasm もこのサイトから配信し、外部の CDN は使いません。
重いクエリでも画面が固まらない・中止できる
SQL は Web Worker で実行します。時間がかかるときは「中止」で Worker を止められます。実行前のデータベースを保持している場合は、その状態に戻します(64MB を超えるデータベースでは保持しないため、閉じます)。
構造を一覧で確認
テーブル・ビュー・インデックス・トリガーを一覧にし、テーブルごとの行数、列の型・主キー・NOT NULL・既定値、CREATE 文を表示します。
エラーの位置を示す
複数の文を実行したとき、何文目か・何行目の何列目かと、その行を表示します。SQLite はエラー位置を行・列では返さないため、メッセージ中の語(near "…"、存在しないテーブル名など)から位置を推定します。推定できないときは、その文の先頭を示します。
CSV・Excel を取り込んで SQL で扱える
列の型は値から INTEGER・REAL・TEXT を推定します(先頭が 0 の「007」などは TEXT のまま)。空のセルは NULL になります。xlsx は複数シートをそれぞれテーブルにします。
書き出し
結果を CSV(UTF-8・BOM 付き)・Excel・JSON に、データベースを .sqlite に、スキーマとデータを SQL 文(.sql)にして保存できます。CSV・Excel は = + - @ で始まる文字列(-100 のような数値は除く)の先頭に ' を付けて、数式として開かれるのを防げます(初期設定でオン)。
こんなときに
- 拾ってきた .db / .sqlite ファイル(アプリのデータや配布データ)の中身を、ツールを入れずに確かめたい
- CSV や Excel の表を SQL で絞り込み・集計して、結果を CSV や Excel に戻したい
- SELECT・JOIN・GROUP BY などの SQL を、環境を作らずにサンプル DB で練習したい
- インデックスが使われているかを EXPLAIN QUERY PLAN で確かめたい
- データベースを SQL ダンプにして、別の環境へ移したい
対応形式
データベースとして開く
表として取り込む
書き出し
対応状況
| 機能 | 対応 | 補足 |
|---|---|---|
| SQLite のファイルを開いて、テーブル・ビュー・インデックス・トリガーとスキーマを見る | 対応 | — |
| テーブルの中身(ページ送り・並べ替え・絞り込み・行数) | 対応 | 絞り込みは「どの列かに文字が含まれる」行(半角英字の大文字・小文字は区別しません) |
| SQL の実行(複数の文・実行時間・エラー位置)、EXPLAIN QUERY PLAN | 対応 | — |
| 履歴 | 一部対応 | このタブを開いている間だけ(最新 30 件)。閉じると消えます |
| CSV・TSV・Excel を表として取り込む | 対応 | .xls(古い形式)は読めません |
| 結果の CSV・Excel・JSON 書き出し、データベースの .sqlite 保存、SQL ダンプ | 対応 | — |
| BLOB(バイナリ) | 一部対応 | 長さを表示し、書き出しでは先頭 32 バイトの 16 進だけになります。.sqlite 保存と SQL ダンプでは全バイトを保持します |
| 暗号化されたデータベース(SQLCipher など) | 非対応 | 開けません |
| サーバーのデータベース(MySQL・PostgreSQL など)への接続 | 非対応 | ブラウザの中のデータベースだけを扱います |
| ATTACH DATABASE・拡張機能の読み込み(load_extension) | 非対応 | ATTACH は拒否します。拡張機能はこのビルドに含まれず使えません |
| 編集した内容の自動保存 | 非対応 | ページを閉じると消えます。変更したら「データベースを保存」を押してください |
制限・注意事項
- 開けるデータベースは 200MB までです。ファイル全体をブラウザのメモリに読み込むため、端末のメモリが少ないと、それより小さくても開けないことがあります。
- CSV・Excel の取り込みは 1 ファイル 100MB・300 万セルまでです。
- 1 回に実行できるのは 200 文まで、1 つの結果で保持するのは 10 万行(または文字数の合計 4000 万字)までです。超えた分は表示も書き出しもされません。LIMIT で絞ってください。
- 表示は 1 セル 2,000 文字までで切ります(データ自体は変わりません)。
- 実行前の状態の保持(「中止」で元に戻す)は 64MB までのデータベースです。中止しても、すでに保存した .sqlite ファイルは変わりません。
- ブラウザのメモリ上のデータベースです。保存するまで、ページを閉じたり再読み込みしたりすると変更は消えます。
プライバシーと安全性
開いたファイルと SQL はブラウザの中でだけ処理し、サーバーには送りません。履歴もこのタブのメモリにだけあり、保存しません。利用状況の計測には、ファイル名や SQL・データの内容は含めず、操作の種類・サイズの区分・エラーの種類だけを使います。
よくある質問
SQLite のファイルをインストールなしで開けますか?
db ファイルの中身を、SQL を書かずに見られますか?
CSV や Excel を SQL で検索・集計できますか?
大きなファイルは開けますか?
パスワードをかけた(暗号化した)SQLite は開けますか?
変更した内容は元のファイルに保存されますか?
関連ツール
SQL 整形・解析・変換(SQL Studio)
SQL を貼り付けるだけで、方言に合わせた整形・1 行化・解析ができます。文字列やコメントは壊さず、WHERE のない UPDATE/DELETE や DROP は警告。値リストの IN 句化や CSV からの INSERT 文生成も端末内で完結します。
CSV Studio(CSV ビューア・編集・結合・分割)
Excel では重い・文字化けする CSV を、ブラウザで開いてすぐに表示・検索・編集できます。結合や分割、Shift_JIS・UTF-8(BOM 付き)・Excel・JSON での保存まで 1 画面で完結します。
Excel データクリーンアップ
Excel や CSV の空白・全角半角・日付・数値の表記ゆれを、チェックを付けるだけで一括で整えます。変更したセルは色で確認でき、Excel・CSV(Shift_JIS 可)で保存できます。
テストデータ生成
システムの動作確認やデモ用に、架空のテストデータを作ります。列の型を選ぶだけで、CSV・TSV・JSON・SQL INSERT・Excel に書き出せます。氏名・住所・会社名は架空の組み合わせで、メールは example ドメインだけです。
DDL→ER図・DB仕様書(DDL ER)
CREATE TABLE 文を貼るかファイルを読み込むと、テーブルの関係を線で結んだ ER 図と、列の一覧(型・NULL・既定値・キー・コメント)のテーブル定義書ができます。読み込みは MySQL・PostgreSQL・SQLite・SQL Server・Oracle の主な書き方に対応し、SQLite の .db からも読めます。
CSV 文字化け・文字コード修復
Excel で開くと文字化けする CSV を、文字コードを自動判定して UTF-8(BOM 付き)や Shift_JIS に変換します。化けたまま保存されてしまった「縺薙s…」のような文字も、多くの場合元に戻せます。
最終更新: