Day2 後半
SQLite を「実際に触れる状態」にするための操作を深掘りする
前半では、SQLite が「ファイル1つで動くデータベース」であり、CLI で sqlite3 sample.db と入力するだけでデータベースを作成・接続できることを学びました。
後半では、GUI ツールでの操作、CLI の基本操作の深掘り、そして データベース作成の理解をより強固にする例題 を扱います。
初心者がつまずきやすいポイントを丁寧にほどきながら進めます。
GUIでSQLiteを扱う
DB Browser for SQLite を使うと「視覚的に理解できる」
CLI が苦手でも、GUI ツールを使えば SQLite を視覚的に扱えます。
特に DB Browser for SQLite は、世界中で使われている定番ツールで、初心者に最適です。
GUI を使うと、次のような操作が視覚的に行えます。
新しいデータベースファイルを作成する。
テーブルを画面上のフォームで作成する。
データを表形式で確認する。
SQL を直接入力して実行する。
CLI が「言語で操作する窓口」なら、GUI は「画面で操作する窓口」です。
どちらも SQLite 本体に命令を送っている点は同じです。
GUIでデータベースを作成する流れ
ファイルを作るだけでデータベースが完成する
DB Browser for SQLite を起動すると、最初に「新規データベース作成」というメニューがあります。
ここでファイル名を入力すると、その瞬間にデータベースが作成されます。
たとえば shop.db というファイルを作ると、それがそのまま「shop データベース」です。
次に「テーブル作成」画面で、列名・型を入力していくと、SQL を書かなくてもテーブルが作れます。
例として、商品情報を管理する products テーブルを GUI で作る場合、次のように入力します。
id(整数)
name(テキスト)
price(整数)
GUI は裏側で次の SQL を生成しています。
CREATE TABLE products (
id INTEGER,
name TEXT,
price INTEGER
);
SQLGUI を使うと SQL の構造が視覚的に理解できるため、初心者にとって非常に良い学習補助になります。
CLIの基本操作を深掘りする
SQLite を扱う上で必ず知っておくべきコマンド
CLI では、SQL 以外にも「ドットコマンド」と呼ばれる SQLite 専用のコマンドが使えます。
これらは SQL ではなく、SQLite の操作そのものを行うための命令です。
現在のデータベースを確認する
.databases
どのファイルに接続しているかが分かります。
テーブル一覧を確認する
.tables
現在のデータベースにどんなテーブルがあるかを確認できます。
SQL を見やすく整形する
.mode column
.headers on
これで SELECT の結果が表形式で見やすくなります。
SQLite を終了する
.quit
CLI を閉じるときは必ず .quit を使います。
例題:Day2の総まとめとして「顧客データベース」を作る
CLI と GUI の両方でイメージできるようにする
ここでは、学習用に customer.db というデータベースを作り、顧客情報を管理するテーブルを作ってみます。
データベース作成(CLI)
sqlite3 customer.db
テーブル作成
CREATE TABLE customers (
id INTEGER,
name TEXT,
email TEXT
);
データ追加
INSERT INTO customers (id, name, email)
VALUES (1, '田中一郎', 'ichiro@example.com');
確認
SELECT * FROM customers;
結果は次のようになります。
1 | 田中一郎 | ichiro@example.com
この一連の流れが「SQLite を使ってデータベースを作り、テーブルを作り、データを入れ、確認する」という最小のサイクルです。
セキュリティの視点
SQLiteは「ファイルがすべて」だからこそ注意が必要
SQLite のデータベースはファイル1つで完結するため、次の点が非常に重要です。
ファイルの保存場所を適切にする。
アクセス権限を正しく設定する。
バックアップファイルを不用意に残さない。
ファイルがコピーされれば、データベースも丸ごとコピーされます。
これは便利であると同時に、扱いを誤ると情報漏洩につながるため、プロとしては常に意識しておく必要があります。
Day2 後半まとめ
GUI を使うと SQLite を視覚的に扱える。
CLI では .tables や .databases などのドットコマンドが便利。
データベースは「ファイル1つ」であり、作成も接続も非常にシンプル。
ファイル=データベースなので、セキュリティはファイル管理が中心になる。
