大学向けリレーショナルデータベース設計とクエリ
概要
このリポジトリは「University Relational Database – Design & Query」と題された学習用プロジェクトで、大学情報システムのリレーショナルデータベース設計とそのクエリ実装を示しています。含まれる主な資産は、設計説明をまとめたPDF(University_SQL_Checkpoint.pdf)と、実際に実行可能なSQLスクリプト(university.sql)です。スキーマは正規化を意識した構造で、学生、講師、科目、履修、成績、部門などのエンティティを想定したテーブル定義、主キー・外部キー制約、サンプルデータ挿入、基本的なSELECT/JOINクエリが含まれています。教育課題としての完成度が高く、データベース設計の基礎を実践的に学べる内容です。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 2
- ファイル数: 3
- メインの言語: 未指定
主な特徴
- 正規化を意識した大学情報システムのスキーマ設計(ER的な視点)
- テーブル作成SQL(主キー・外部キー・制約を含む)とサンプルデータ挿入
- 課題説明をまとめたPDFによる設計意図のドキュメント化
- 学習・演習用途として手早く環境に適用できる単一SQLファイル
技術的なポイント
このプロジェクトは教育目的のデータベース設計チェックポイントとして、実務的な観点と学習観点の両方に配慮した構成になっています。university.sqlにはエンティティごとのCREATE TABLE文が並び、各テーブルには適切なデータ型、主キー(PRIMARY KEY)、一意性制約やNOT NULL制約が設定されている想定です。さらに、リレーションを表現するためのFOREIGN KEY制約が用いられ、参照整合性を保つ設計になっています。典型的な大学モデルでは、Students(学生)・Instructors(講師)・Departments(学部)・Courses(科目)・Enrollments(履修/成績)のようなテーブル群が存在し、Enrollmentsで学生と科目を多対多(N:N)に紐付ける中間テーブル構成が採られます。SQLスクリプトにはINSERT文によるサンプルデータが含まれているため、実行後すぐにSELECTやJOIN、GROUP BY、ORDER BYを用いたクエリで集計・検索の挙動を確認できます。設計ドキュメント(PDF)は、ER図や正規化の理由、制約設計の意図、想定ユースケース(例:成績照会、科目別履修者一覧、教員配属の追跡)を含むことで、単なるDDLだけでなく設計思想まで確認できる点が有用です。学習者はこのリポジトリを使って参照整合性の違反ケースやトランザクションの扱い、インデックス設計の初歩(スキーマから推測)など実践的な課題に発展させることが可能です。
プロジェクトの構成
主要なファイルとディレクトリ:
- README.md: file
- University_SQL_Checkpoint.pdf: file
- university.sql: file
まとめ
教育用途に適した、実践的で分かりやすい大学データベース設計のチェックポイント資料です(短評)。
リポジトリ情報:
- 名前: University-Relational-Database-Design-Query
- 説明: University Relational Database – Design & Query
- スター数: 1
- 言語: null
- URL: https://github.com/daniel10027/University-Relational-Database-Design-Query
- オーナー: daniel10027
- アバター: https://avatars.githubusercontent.com/u/47211214?v=4
READMEの抜粋:
University Information System — SQL Checkpoint
Course: Computer Systems and Their Fundamentals — Database Systems
Student: JEAN MARIE DANIEL VIANNEY GUEDEGBE
Platform: GOMYCODE
Files: university.sql · University_SQL_Checkpoint.pdf
Overview
This checkpoint designs and implements a normalized relational database for a university information system. It covers schema design, table creation with constraints, sample …