SQLの実行ファイルと結果
章ごとのSQL例を、本文に載っている順にまとめました。Pythonファイルは本文の実行例と同じ内容です。ダウンロードしたファイルをPython 3で実行してください。SQL例は本文の内容をそのまま収録しています。
動作を確認したPythonファイル
確認環境:Python 3.14.5/SQLite 3.54.0(この作成時の環境)。実行結果は環境によって版表示が異なります。
- database_intro.py をダウンロード
database_intro.py の実行結果
Python 3.14.5
SQLite 3.54.0
student_id | name
S01 | サリタ
S02 | ラジャン
ch03.py の実行結果
columns: ['student_id', 'name']
('S02', 'ラジャン')
('S04', '教材用の学生')
ch04.py の実行結果
columns: ['n_rows', 'n_scored', 'score_sum', 'score_avg']
(4, 3, 251, 83.66666666666667)
各章のSQLファイル
SQLファイルには本文にあるSQLコードブロックを掲載順で収録しています。SQLは章で説明した表を用意して実行してください。
章ごとの実行結果
確認環境はPython 3.14.5/SQLite 3.54.0です。本文の例と同じ教材データで確認しました。実行可能なSQLコードが章本文にない章には、SQLファイルを追加していません。
| 章 | 実行結果 |
|---|---|
| はじめに | 学生IDと名前の2行が表示されました。Python・SQLiteの版は上の実行結果を見てください。 |
| 第1章 | 学生4行・授業3行・履修4行。履修E04の点数はNULLでした。 |
| 第2章 | UNIQUE、NULL、0、空文字、外部キーの確認が通りました。 |
| 第3章 | 条件 IT でS02・ラジャン、S04・教材用の学生が表示されました。 |
| 第4章 | 履修4行、採点済み3行、点数合計251、平均83.666…でした。授業別集計も本文と一致しました。 |
| 第5章 | JOINで履修4行を取得。LEFT JOINでは学生4人が残り、履修数は2・2・0・0でした。 |
| 第6章 | 追加と更新は各1行。ROLLBACKで変更前に戻り、削除後は対象行が0行になりました。 |
| 第7章 | NOT NULL・UNIQUE・CHECK・外部キーの制約結果は本文と一致しました。空文字は許可されました。 |
| 第8章 | 正規化後の3行をJOINで再構成し、元の一覧と全セルが一致しました。 |
| 第9章 | COMMIT後は今回分1・総数3・残席1。ROLLBACK後は0・2・2でした。 |
| 第10章 | 条件 program = IT でS02・ラジャン、S04・教材用の学生が表示されました。 |
第1・2・8章は概念・設計を中心に扱い、本文に配布用SQLコードブロックがありません。第10章は本文のPythonコード例と実行結果を掲載しています。各章の答えにあるSQLはこのページに含めていません。