「データベースを学びたいけど、MySQLやPostgreSQLは設定が大変そう…」
「アプリに簡単なデータベース機能を付けたい」
そんな悩みを解決してくれるのがSQLite(エスキューライト)です。
SQLiteは、世界で最も使われているデータベースの一つです。AndroidスマホやiPhone、Webブラウザ、そして多くのアプリケーションの中で動いています。
この記事では、WindowsパソコンでSQLiteを使い始める方法を、データベース初心者の方にもわかりやすく解説します。
難しい設定は一切なし!たった10分程度で、あなたのパソコンでSQLiteが使えるようになりますよ。
SQLiteって何がすごいの?

他のデータベースとの違い
一般的なデータベース(MySQLやPostgreSQLなど)と比べて、SQLiteには大きな違いがあります。
従来のデータベース
- サーバーが必要:専用のサーバープログラムを起動する必要
- 設定が複雑:ユーザー管理、権限設定、ネットワーク設定など
- 資源を消費:常にメモリを使い続ける
- 管理が大変:バックアップ、メンテナンスが必要
SQLiteの場合
- サーバー不要:単体のファイルとして動作
- 設定なし:ダウンロードしてすぐ使える
- 軽量:必要な時だけメモリを使用
- メンテナンス不要:ファイルをコピーするだけでバックアップ完了
SQLiteが得意なこと
こんな用途にピッタリ
- 個人用のアプリ開発:家計簿、日記、メモアプリなど
- データベースの学習:SQLの勉強に最適
- プロトタイプ作成:アイデアの検証に
- 小規模なWebサイト:アクセス数が少ないサイト
- データ分析:CSVファイルをデータベース化
実際の利用例
- WhatsApp:メッセージの保存
- Firefox:ブックマークや履歴の管理
- iTunes:音楽ライブラリの管理
- Skype:チャット履歴の保存
SQLiteの制限について
万能ではありませんが、制限を理解していれば問題ありません。
不得意なこと
- 大量の同時アクセス:100人以上が同時に書き込み
- 巨大なデータ:数十TB以上のデータ
- 高度な権限管理:複雑なユーザー管理システム
でも、大丈夫! これらの制限に引っかかる用途は、実はそれほど多くありません。
個人利用や小規模なプロジェクトなら、SQLiteで十分すぎるほどです。
SQLiteのダウンロードと配置

公式サイトからのダウンロード
手順1:公式サイトにアクセス
- ブラウザで「sqlite.org download」と検索
- または直接「https://www.sqlite.org/download.html」にアクセス
- 「Precompiled Binaries for Windows」という項目を探す
手順2:ファイルを選ぶ
複数のファイルがありますが、必要なのは以下です:
sqlite-tools-x〇〇-xxxxxxxx.zip
ファイル名の説明
- sqlite-tools:SQLiteのコマンドラインツール
- 86もしくは64:32bit版もしくは64bit版
- xxxxxxxx:バージョン番号(数字が大きいほど新しい)
手順3:ダウンロード開始
- ファイル名をクリックするとダウンロードが始まります
- サイズは1-2MB程度なので、すぐに完了します
ファイルの解凍と配置
手順1:ZIPファイルを解凍
- ダウンロードしたZIPファイルを右クリック
- 「すべて展開」または「ここに展開」を選択
- 中に
sqlite3.exe
というファイルがあることを確認
手順2:専用フォルダを作成
C:\sqlite
このフォルダを作成して、sqlite3.exe
をここに移動します。
なぜC:\sqliteなの?
- わかりやすい:どこにあるか迷わない
- 権限の問題なし:アクセス制限に引っかからない
- パスが短い:コマンド入力が楽
手順3:ファイルの配置確認 最終的に、以下のようになっていればOKです:
C:\sqlite\sqlite3.exe
環境変数(PATH)の設定
この設定をすると、どのフォルダからでも sqlite3
コマンドが使えるようになります。
手順1:環境変数の設定画面を開く
- 「スタートボタン」を右クリック
- 「設定」をクリック
- 「システム」をクリック
- 「詳細情報」をクリック
- 「システムの詳細設定」をクリック
- 「環境変数」ボタンをクリック
手順2:PATHに追加
- 「システム環境変数」の一覧から「Path」を探す
- 「Path」を選択して「編集」をクリック
- 「新規」をクリック
- 「C:\sqlite」と入力
- 「OK」を何回か押して画面を閉じる
手順3:設定の確認
- コマンドプロンプトを開く(新しく開く必要があります)
sqlite3 --version
と入力- バージョン情報が表示されれば成功!
うまくいかない場合
- コマンドプロンプトを一度閉じて、新しく開き直す
- パスの入力ミスがないか確認
- 次の「直接指定する方法」を試してみる
SQLiteを実際に使ってみよう

初回起動してみる
方法1:PATHを設定した場合
- コマンドプロンプトを開く
- 好きなフォルダに移動(例:
cd C:\Users\ユーザー名\Documents
) sqlite3 my_first_database.db
と入力
方法2:PATHを設定していない場合
- コマンドプロンプトを開く
cd C:\sqlite
と入力してフォルダを移動sqlite3 my_first_database.db
と入力
何が起きるの?
my_first_database.db
という名前のデータベースファイルが作成される- SQLiteの対話モード(インタラクティブモード)が起動する
- プロンプトが
sqlite>
に変わる
画面の例
C:\Users\あなたの名前\Documents>sqlite3 my_first_database.db
SQLite version 3.43.0 2023-08-24 12:36:59
Enter ".help" for usage hints.
sqlite>
最初のテーブルを作ってみよう
SQLiteが起動したら、実際にデータベースを操作してみましょう。
ステップ1:テーブルの作成
CREATE TABLE users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER,
email TEXT
);
各項目の説明
- users:テーブルの名前(好きな名前でOK)
- id:一意の番号(自動で割り振られる)
- name:ユーザーの名前(必須項目)
- age:年齢(数値)
- email:メールアドレス
ステップ2:データを追加してみる
INSERT INTO users (name, age, email) VALUES ('田中太郎', 25, 'tanaka@example.com');
INSERT INTO users (name, age, email) VALUES ('佐藤花子', 30, 'sato@example.com');
INSERT INTO users (name, age, email) VALUES ('山田次郎', 28, 'yamada@example.com');
ステップ3:データを確認してみる
SELECT * FROM users;
結果
1|田中太郎|25|tanaka@example.com
2|佐藤花子|30|sato@example.com
3|山田次郎|28|yamada@example.com
ステップ4:特定の条件で検索
SELECT name, age FROM users WHERE age >= 28;
結果
佐藤花子|30
山田次郎|28
基本的なSQLコマンド
データ検索(SELECT)
-- すべてのデータを表示
SELECT * FROM users;
-- 特定の列だけ表示
SELECT name, email FROM users;
-- 条件を指定して検索
SELECT * FROM users WHERE age > 25;
-- 並び替え
SELECT * FROM users ORDER BY age DESC;
データ追加(INSERT)
-- 1行追加
INSERT INTO users (name, age, email) VALUES ('鈴木一郎', 35, 'suzuki@example.com');
-- 複数行を一度に追加
INSERT INTO users (name, age, email) VALUES
('高橋美咲', 22, 'takahashi@example.com'),
('渡辺健一', 40, 'watanabe@example.com');
データ更新(UPDATE)
-- 特定のデータを更新
UPDATE users SET age = 26 WHERE name = '田中太郎';
-- 複数の項目を更新
UPDATE users SET age = 31, email = 'sato_new@example.com' WHERE name = '佐藤花子';
データ削除(DELETE)
-- 特定のデータを削除
DELETE FROM users WHERE age > 35;
-- すべてのデータを削除(テーブル構造は残る)
DELETE FROM users;
SQLiteの便利なコマンド
SQLiteには、SQL以外にも便利なコマンドがあります(ドット「.」で始まります)。
基本的なコマンド
-- ヘルプを表示
.help
-- テーブル一覧を表示
.tables
-- テーブル構造を表示
.schema users
-- データを見やすく表示
.headers on
.mode column
SELECT * FROM users;
-- CSVファイルとしてエクスポート
.mode csv
.output users.csv
SELECT * FROM users;
.output stdout
-- SQLiteを終了
.exit
よくあるトラブルと解決方法

「sqlite3が認識されません」エラー
症状
'sqlite3' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
原因と解決法
1. PATHが設定されていない
- 環境変数PATHの設定を再確認
- コマンドプロンプトを再起動
- 直接パスを指定:
C:\sqlite\sqlite3.exe
2. ファイルが正しい場所にない
C:\sqlite\sqlite3.exe
が存在するか確認- ファイル名が正しいか確認(拡張子.exeも含めて)
3. ダウンロードファイルの問題
- 再度、公式サイトからダウンロード
- 正しいファイル(sqlite-tools-win32-x86-*.zip)を選択
「アクセスが拒否されました」エラー
症状 SQLiteは起動するが、ファイルの作成や変更ができない
原因と解決法
1. フォルダの権限問題
C:\Users\ユーザー名\Documents
など、書き込み可能なフォルダで実行- 管理者権限でコマンドプロンプトを起動
2. ファイルが使用中
- 他のプログラムでデータベースファイルを開いていないか確認
- SQLiteの別セッションが残っていないか確認
「ファイルがブロックされています」
症状 ダウンロードしたファイルが実行できない
解決法
sqlite3.exe
を右クリック- 「プロパティ」を選択
- 「全般」タブの下の方にある「ブロックの解除」にチェック
- 「OK」をクリック
日本語が文字化けする
症状 日本語のデータが「???」や変な文字で表示される
解決法
-- コマンドプロンプトの文字コードを変更
chcp 65001
-- SQLiteで文字コードを確認
PRAGMA encoding;
根本的な解決法
- Windows Terminal を使用する(推奨)
- UTF-8に対応したコマンドプロンプトを使用
SQLiteをもっと活用しよう

GUIツールを使ってみる
コマンドラインが苦手な方には、グラフィカルなツールもあります。
DB Browser for SQLite(おすすめ)
- 無料で使える
- 直感的な操作
- SQLの学習にも最適
- 公式サイト:https://sqlitebrowser.org/
その他のツール
- SQLiteStudio:高機能で無料
- Navicat for SQLite:有料だが多機能
- HeidiSQL:MySQL、PostgreSQLも対応
プログラミング言語から使ってみる
Python(最も簡単)
import sqlite3
# データベースに接続
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# テーブル作成
cursor.execute('''CREATE TABLE IF NOT EXISTS users
(id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''')
# データ挿入
cursor.execute("INSERT INTO users (name, age) VALUES (?, ?)", ("Alice", 25))
# データ取得
cursor.execute("SELECT * FROM users")
print(cursor.fetchall())
# 接続を閉じる
conn.close()
その他の言語
- JavaScript (Node.js):sqlite3パッケージ
- Java:SQLite JDBCドライバー
- C#:System.Data.SQLiteパッケージ
- Go:github.com/mattn/go-sqlite3
Webアプリケーションでの活用
PHP + SQLite
<?php
$pdo = new PDO('sqlite:example.db');
$stmt = $pdo->query('SELECT * FROM users');
while ($row = $stmt->fetch()) {
echo $row['name'] . "\n";
}
?>
Flask (Python) + SQLite
from flask import Flask, g
import sqlite3
app = Flask(__name__)
@app.route('/')
def show_users():
conn = sqlite3.connect('example.db')
users = conn.execute('SELECT * FROM users').fetchall()
conn.close()
return str(users)
まとめ
SQLiteのWindowsインストール、お疲れさまでした!
今日達成したこと
- SQLiteのダウンロードと配置
- 環境変数PATHの設定
- 初回起動とデータベース作成
- 基本的なSQL操作(SELECT、INSERT、UPDATE、DELETE)
- トラブルシューティングの方法
コメント