ローカルPCにSQLiteを導入してSQLを実行する手順

学習

この記事で分かること

  • Windows のローカルPCに SQLite を入れる流れ が分かります。
  • sqlite3 コマンドで DBファイル作成、テーブル作成、INSERT、SELECT を試せます。
  • 同じ DB ファイルを GUI ツールで開いて中身を確認する考え方 が分かります。
  • オンライン環境やブラウザ内SQLiteではなく、ローカルで試すメリット が整理できます。

はじめに:オンラインの次はローカルで試せると強い

SQL を学び始めた段階では、まずはオンライン環境やブラウザ内SQLiteで手を動かすのが安全です。
ただ、少し慣れてくると、「自分のPCの中に DB ファイルを作って、あとから何度も開き直したい」 と思う場面が出てきます。

そのときにちょうどよいのが SQLite です。

SQLite は、サーバーを別に立てなくても 1つの DB ファイルをそのまま扱える ので、

  • ローカルで安全に試せる
  • 作ったデータを残しておける
  • sqlite3 コマンドでも GUI でも同じファイルを見られる

という使いやすさがあります。

この記事では、Windows を前提に、

  • SQLite を入れる
  • sqlite3 で DB ファイルを作る
  • テーブルを作ってデータを入れる
  • SELECT で中身を確認する
  • GUI でも同じ DB を開く

ところまでを、最小限の手順でまとめます。


1. ローカルに SQLite を入れるメリット

ローカルに SQLite を入れるメリットは、「試した結果を自分のPCにそのまま残せること」 です。

オンライン環境やブラウザ内SQLiteはとても便利ですが、次のような制約があります。

  • ブラウザを閉じるとデータが消えることがある
  • サービス側の仕様変更に影響されることがある
  • 外部サービスに置きたくないサンプルデータもある

一方、ローカルSQLiteなら、

  • sample.db のような DB ファイルを自分で持てる
  • 後日もう一度開いて続きを試せる
  • sqlite3 でも GUI でも同じファイルを参照できる

ので、「少し腰を据えてSQLを試したい段階」 に向いています。


2. SQLite をインストールする

Windows では、SQLite の公式配布物から sqlite3.exe を使える状態にするのが手軽です。

大まかな流れは次のとおりです。

  1. SQLite のダウンロードページ(公式)を開き、Precompiled Binaries for Windows の sqlite-tools-win-x64-….zip(64bit Windows 向けのコマンドラインツール一式)などを入手する(ファイル名の数字はバージョンにより変わる)
  2. ZIP を展開する
  3. sqlite3.exe があるフォルダを分かりやすい場所に置く
  4. 必要ならそのフォルダにパスを通す

たとえば、次のような場所に置くイメージです。

C:\tools\sqlite\
  sqlite3.exe

2-1. インストール後の確認

PowerShell やコマンドプロンプトで、次のように実行してバージョンが出れば準備完了です。

sqlite3 --version

バージョン番号が表示されれば、sqlite3 コマンドが使える状態です。

もし sqlite3 が見つからない場合は、次のどちらかを確認します。

  • sqlite3.exe があるフォルダに移動してから実行する
  • そのフォルダを環境変数 PATH に追加する

3. sqlite3 コマンドで DB ファイルを作る

SQLite はサーバー型の DB ではないので、ファイル名を指定して開くだけで DB を作れる のが特徴です。

たとえば、作業用フォルダで次のように実行します。

sqlite3 practice.db

これで practice.db というファイルを開けます。
存在しなければ、新しく作られます。

起動後は、SQLite のプロンプトが表示されます。

sqlite>

この状態で SQL を順番に実行していきます。

3-1. 終了するとき

SQLite の対話モードを抜けるときは、次を実行します。

.quit

4. テーブル作成・INSERT・SELECT を試す

まずは最小限の users テーブルを作って、データを入れて、取り出してみます。

4-1. テーブルを作る

CREATE TABLE users (
  id    INTEGER PRIMARY KEY,
  name  TEXT,
  age   INTEGER,
  city  TEXT
);

エラーが出なければ、テーブル作成は成功です。

4-2. データを入れる

INSERT INTO users (name, age, city) VALUES
  ('Alice', 25, 'Tokyo'),
  ('Bob',   32, 'Osaka'),
  ('Carol', 29, 'Nagoya'),
  ('Dave',  41, 'Fukuoka');

これで、4件のサンプルデータが入ります。

4-3. SELECT で確認する

SELECT *
FROM users;

結果は次のようなイメージです。

1|Alice|25|Tokyo
2|Bob|32|Osaka
3|Carol|29|Nagoya
4|Dave|41|Fukuoka

まずは、自分で作ったテーブルから自分でデータを取り出せる ことを確認しましょう。

4-4. WHERE も試す

SELECT name, city
FROM users
WHERE age >= 30;

こうすると、30歳以上のユーザーだけを取り出せます。

Bob|Osaka
Dave|Fukuoka

この段階までできれば、SQLite をローカルで触る最初の準備としては十分です。


5. GUI ツールで同じ DB ファイルを開いて確認する

sqlite3 コマンドは軽くて便利ですが、表の形で見たい ときは GUI ツールが向いています。

よく使われる選択肢としては、たとえば次のようなものがあります。

使い方の流れはだいたい共通です。

  1. GUI ツールを起動する
  2. practice.db を開く
  3. テーブル一覧から users を選ぶ
  4. データ表示タブや Browse 系の画面で中身を見る

ここで大事なのは、sqlite3 で作った DB ファイルを、そのまま GUI で開ける ことです。

つまり、

  • コマンドで SQL を打つ
  • GUI で結果を目で確認する

を行き来できます。

5-1. GUI はどんなときに向いているか

  • テーブル一覧を見ながら確認したい
  • 行データを表形式で見たい
  • SQL にまだ慣れておらず、まず中身を目で追いたい

一方で、SQL を覚える段階では sqlite3 で自分の手で書いてみる方が理解しやすい です。
そのため、最初は sqlite3、確認や補助で GUI、と考えるとバランスが取りやすいです。


6. どんなときにオンライン環境よりローカルが向くか

ローカルSQLiteが向くのは、次のような場面です。

  • 同じ DB を何日かかけて育てたい
  • 作ったテーブルやデータを消したくない
  • 実ファイルを別ツールで開いたり、バックアップしたりしたい
  • 将来的にアプリ内部の SQLite ファイルも覗いてみたい

特に最後の点は重要です。
SQLite をローカルで扱えるようになると、学習用の practice.db だけでなく、実際のアプリが内部で使っている SQLite ファイルを読み取り専用で確認する こともやりやすくなります。

たとえば Cursor の state.vscdb を調べる記事でも、
「どんな SQL を投げるか」は分かっていても、その SQL をどこでどう実行するか が分からないと手が止まりやすいです。

まずはこのローカルSQLiteの手順を押さえておくと、次の応用に進みやすくなります。


次に読む

タイトルとURLをコピーしました