データベースとSQL

SQLiteビューア構造を確かめてからデータを読む

構造を確かめてからデータを読む

SQLiteビューア

データベースとSQL

データベースは未読込です。

構造とインデックス
対象を選択

インデックス

クエリ結果

データベースは未読込です。

ファイルとSQLはこのブラウザ内で処理し、アップロードや履歴保存は行いません。

読み取り専用・ファイル50 MiB・SQL 20,000文字・結果10,000行、256列、2,000,000単位・実行5秒/エンジン読込20秒。

1ページ100行、セルは200文字まで表示。出力は読み込み済みの全値を含みます。JSONはcolumns + rows、大整数は文字列、BLOBは十六進オブジェクト。CSVは数式対策を行い、型の完全な往復変換はできません。

ファイルを開くかサンプルを試してください。

アプリのバックアップを受け取ったものの、どのテーブルを見るべきか分からないときにSQLiteビューアが役立ちます。SQLiteファイルを開くと、テーブル構造から必要な列を探せます。

SQLiteデータベースの値だけでなく、問い合わせとの対応も確認しましょう。手元のスナップショットに対してSQL実行を行い、条件を絞ってから必要な結果を持ち出せます。

SQLiteビューアを使う理由

列とインデックスを先に確認

SQLiteビューアはテーブルとビューを一覧にし、選んだ対象のCREATE文とインデックスを表示します。結合を書く前に列名や一意性を確認でき、元のファイルを書き換えることはありません。

データベースから表とインデックスのカードが分かれ、鍵付きのクエリ画面につながる図。

表示中のページと出力範囲を区別

画面は1ページ100行までですが、出力は読み込み済みの全行を含みます。10,000行で切り詰められた場合はその旨を表示し、SQLを変更すると古い結果の出力を止めます。

複数ページの結果が二つの出力ファイルに集まり、結果の上限が示される図。

一貫したスナップショットを選ぶ

01

元のアプリからバックアップを取得

使用中のデータベースでは、新しい更新が別のWALファイルに残ることがあります。本ツールはログを結合しません。元のアプリから書き出した単独のデータベースを使い、表示されたサイズを確認してください。

02

選択による実行と文字編集を使い分ける

テーブルを選ぶと引用符付きSELECTが実行されます。SQLの文字を編集しただけでは動かず、実行ボタンまたはCtrl/Cmd+Enterが必要です。WHEREで絞り込み、ORDER BYで順序を指定します。

03

読み込み済み件数を確かめる

切り詰め表示があれば条件を狭めて再実行します。ページ番号は全テーブルの件数を意味しません。JSONはcolumnsとrowsを分けるため、同名の列も順番どおり残ります。

構造と値を一緒に確認

SQLiteによる実際の評価

sql.jsのWebAssemblyエンジンが、対応する結合、集計、SELECT型CTEを含む単一の問い合わせを実行します。処理は終了可能なWorkerに隔離され、重い問い合わせを中断しても画面は操作できます。

定義をファイルから読む

テーブルとビューの選択に加え、対象のCREATE文、インデックス名、定義を表示します。自動インデックスには独立したCREATE文がない場合があり、それも区別して示します。

特殊な値の表現を明示

JSONはNULLを維持し、安全な整数範囲を超える値を十進文字列、BLOBを型と十六進データのオブジェクトにします。CSVは全フィールドを引用し、数式に見える文字列に先頭のアポストロフィを付けます。

この参照セッションの範囲

単一ファイルと単一SELECT
SELECTまたは最後がSELECTとなるWITHを受け付けます。書き込み、ユーザーのPRAGMA、EXPLAIN、トランザクション、パラメーター、複数文、別データベースの接続には対応しません。書き込み用予約語を列名に使う場合は引用してください。
メモリと結果の上限
ファイルは50 MiB、SQLは20,000文字まで。結果は10,000行、256列、シリアライズ後2,000,000 UTF-16単位までです。行数超過は切り詰めを表示し、列数や内容量の超過はエラーにします。SQLiteのヒープ上限は128 MiBです。
実行時間と古い結果
エンジンの読み込みは20秒、各データベース操作は5秒までです。中断や時間切れでWorkerを終了します。SQLを変更すると前の結果は無効になり、再実行までコピーやダウンロードはできません。
復旧や復号はしない
SQLCipher、暗号化ファイル、WALやjournalの結合、破損したデータベースの修復は対象外です。遠隔サーバーへの接続、URL入力、履歴の永続保存、データの編集もありません。
出力はバックアップではない
CSVとJSONは読み込めたクエリ結果だけを含みます。セルは200文字までプレビューし、出力には受け付けた値を全文含めます。CSVではNULLと空文字の区別などが失われ、数式対策で文字列も変わるため、必要ならJSONを選んでください。 不正なUTF-8を含むテキストは拒否します。hex(列名)で元のバイトを確認できます。

SQLiteビューアのよくある質問

.sqliteや.dbファイルはどう開きますか?

ファイル選択から標準SQLite 3データベースを指定します。拡張子だけでなくヘッダーを検査するため、.sqlite3も使えます。SQLのテキストダンプやZIP、暗号化ファイルは直接読み込めません。

最大ファイルサイズはいくつですか?

50 MiB、つまり52,428,800バイトです。ただしブラウザの空きメモリによっては小さなファイルでも失敗します。大きな値や複雑な結合は、入力が小さくても実行上限に達することがあります。

任意のSQLコマンドを実行できますか?

いいえ。単一のSELECTまたはSELECT型CTEだけです。組み込みエンジンにない拡張を必要とするテーブルも利用できません。元データを変更するための保存操作は用意していません。

データベース全体のスキーマを表示できますか?

一覧にはテーブル、ビューと対象に属するインデックスを表示し、選択した定義を読めます。トリガーや全設定の網羅的な診断は行わないため、完全なスキーマ監査ツールではありません。

クエリ結果はどう出力できますか?

下部のCSVまたはJSONダウンロードを使います。出力範囲は現在のページだけでなく読み込み済みの全行です。切り詰められた結果には表示があり、JSONにもtruncatedフラグが含まれます。

ファイルやクエリの問題がありますか?

次のスナップショットを確認

SQLiteビューアで構造を調べ、条件を整えてから確認済みの結果を出力しましょう。