関係スキーマとは?かんけいすきーま
関係スキーマとは、関係データベースにおける関係(表)の「型」の定義で、関係名・属性名の集合・各属性の定義域(ドメイン)・成り立つべき制約からなる。データが日々変わっても不変な骨格を指し、ある時点の中身であるタプルの集合(関係インスタンス)とは区別する。正規化や関数従属の議論はスキーマに対して行い、たまたま今入っているデータで判断しない。
最終更新:2026-10-06
情報処理安全確保支援士を最短で暗記・合格する →背景
同じ表でも、中身は毎日変わる。「今のデータでは重複が無いから一意」と決めてしまうと、将来の1行で制約が崩れ、参照整合性やアクセス制御の前提が壊れる。だから設計の対象を「型」として切り出し、業務ルールから制約を決める考え方が要る。支援士では、利用者や権限を管理する表の設計で、どの列に一意制約や参照制約を置くかが認可の正しさに直結するため問われる。
具体例
利用者(利用者ID, パスワードハッシュ, ソルト, ロール) という記述が関係スキーマで、利用者IDが主キー、ロールの定義域は{一般, 管理者}のように制約を含めて定義する。そこに入っている実際の5,000行が関係インスタンスにあたる。ロールの列に任意の文字列を許すと、権限判定の抜け道になるので定義域で縛る。
試験での引っ掛け
関数従属が成り立つかを現在のデータだけで判定するのは誤りで、業務上重複しうるなら従属は成り立たない。スキーマは業務ルールから決めるものであって、データから機械的に導くものではない。またPostgreSQLなどが持つ「スキーマ」(表をまとめる名前空間。CREATE SCHEMAで作る)は別の意味で、こちらは権限の境界として使われる——支援士の午後ではこの意味で出ることがある。
関連用語
出典・参考
公式シラバスの3 技術要素 > 1. データベース方式 > (1) データベースに掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。