データベース入門 — SQLと設計とセキュリティ
会社のデータの「本丸」であるデータベースを、ゼロから体系的に学ぶコースです。インストール不要のSQLiteで実際にSQLを打ちながら、テーブル設計・トランザクション・インデックス、そして情報漏えいの最前線であるDBセキュリティまでを一気に身につけます。
🗄️ SQLite で手を動かす
📖 全10章 + 演習
🛡️ セキュリティ重点
🐍 Python連携あり
このコースについて
ITシステムの中心には、ほぼ例外なくデータベースがあります。販売管理も、勤怠も、Webサービスも、その裏では必ずデータベースが動いています。そして情報漏えい事故で「漏れる」のは、たいていデータベースの中身です。データを正しく設計し、SQLで自在に取り出せて、守り方を知っている——この3つがそろって、はじめてITの土台が完成します。
教材にはインストールの手間がほぼないSQLiteを使います。ここで学ぶSQLと設計の考え方は、MySQL・PostgreSQL・SQL Serverなど実務のデータベースにそのまま通用します。Python × セキュリティ入門コースを終えた方は、第8章でPythonとデータベースがつながる瞬間を楽しめるはずです(未修でも第7章までは問題なく進めます)。
💡 こんな人におすすめ
「SQLは雰囲気でSELECTしか書いたことがない」「Excelの限界を感じている」「システムのデータがどう保存されているのか知りたい」「DBのセキュリティ対策を体系的に知りたい」——ひとつでも当てはまれば、このコースはあなたのためのものです。
カリキュラム
第1部 データベースの基礎
第1章
データベースとは何か
Excel管理の限界、DBMSの役割、RDBMSの考え方、主要製品、SQLite環境の準備。
第2章
テーブル設計の基本 — 主キー・外部キー・リレーション
行と列とデータ型、主キーの意味、テーブル同士の関係、ER図、CREATE TABLE。
第2部 SQLを使いこなす
第3章
SQL入門① — SELECTで読む
SELECT・WHERE・ORDER BY・LIMIT。データを自在に絞り込んで取り出す。
第4章
SQL入門② — 集計と結合
COUNT・SUM・GROUP BY・HAVING、そして山場のJOIN。複数テーブルを組み合わせる。
第5章
SQL入門③ — 書き込みとトランザクション
INSERT・UPDATE・DELETE、WHERE忘れの恐怖、トランザクションとACID。
第3部 設計とパフォーマンス
第6章
正規化とテーブル設計の実践
悪いテーブルの典型、第1〜第3正規形、あえて崩す判断、設計演習。
第7章
インデックスとパフォーマンス
インデックスの仕組み、実行計画の読み方、効かないパターン、N+1問題。
第4部 実務とセキュリティ
第8章
PythonからDBを使う
sqlite3モジュール、プレースホルダ、CSV取り込み、CRUDツール製作、ORM入門。
第9章
データベースのセキュリティ
SQLインジェクション対策、権限管理、暗号化、監査ログ、バックアップ。
第10章
NoSQL・クラウドDBと次のステップ
NoSQLの4分類、マネージドDB、運用の実務、学習ロードマップ。
進め方のコツ
- SQLは必ず自分で打つこと。SQLは「読めるけど書けない」になりやすい言語です。すべての例を自分のSQLiteで実行してください。
- 第3〜5章は連続で。同じサンプルデータベースを育てながら進む構成なので、間を空けずに進めると定着します。
- 「なぜそう設計するのか」を言葉にすること。SQLの文法より、設計の理由を説明できることのほうが実務では何倍も価値があります。
🛡️ このコースとセキュリティ
データベースは攻撃者にとっての「最終目的地」です。各章に🛡️コラムを配置し、第9章では1章まるごとDBセキュリティを扱います。SQLインジェクションの対策は入門コース第10章でも学びますが、このコースでは「DB側から見た守り方」——権限・暗号化・監査——まで踏み込みます。