情報処理基礎論 a 第 12 回 (関係データベースと SQL ) 「関係データベース」 講義ノート目次

関係データベース

関係データベースとは、 データベースを 2 次元表形式にまとたもので、 行(record [組])と列(field [属性])の表を作る。 作られた表は関係表と呼ぶこともある。

関係表の例:キャラクタと番組
属性
フィールド 1「名前」フィールド 2「番組名」フィールド 3「性別」フィールド 4「キャラクタ」
レコード 1ブラサムパワパフガールズ
レコード 2バブルスパワパフガールズ
レコード 3バタカップパワパフガールズ
レコード 4モジョジョジョパワパフガールズ
レコード 5ミス・キーンパワパフガールズ
レコード 6メイヨールパワパフガールズ
レコード 7プロフェッサパワパフガールズ
レコード 8ジャックサムライジャック
レコード 9アクサムライジャック

各属性には、「名前」、「番組名」、「性別」、「キャラクタ」が記録されている。属性を鍵 (key) として、必要な情報を取り出していく。

候補キーとは、属性のことで、例えば「名前」フィールドや「性別」フィールドを探すときにこれらを指すために使われる。

演習5-1:候補キーを「キャラクタ」とする。それらのレコードを全て挙げよ。

主キーーとは、その中でも、フィールド内で重複のないものをさす。 主キーをもとに、データを探すことになる。 ここでは、重なっていない属性は「名前」フィールドのみである。

この他、他の関係表と照しあわせるときに用いるキーを外部キーと呼ぶ。

演習5-2:下の関係表と合せて何か情報を取り出したい(「参照する」という)。 下の 2 つの関係表の属性を取り出すとき、上の関係表のどの属性が外部キーとして適切だろうか?

住んでいる町と趣味・特技
属性
フィールド 1「名前」フィールド 2「住んでいる町」フィールド 3「趣味・特技」
レコード 1ブラサムタウンズビル新しい服
レコード 2バブルスタウンズビル動物と話す
レコード 3バタカップタウンズビルケンカ
レコード 4モジョジョジョタウンズビル発明
レコード 5ジャック未来世界
レコード 6デクスタラボ発明
レコード 7ディディラボバレエ
番組ストーリー
属性
フィールド 1「番組名」フィールド 2「概要」
レコード 1パワーパフガールズ3 人の女の子たちのお話
レコード 2サムライジャック未来世界の侍の話
レコード 3デクスタ研究所姉と弟の兄弟げんかの話
レコード 4快適な生活電気会社の CM 集
レコード 5ウォレスとグルミット犬と発明家の話

関係表の操作について

何枚にもわたる資料の中から、必要なデータを取り出したり、組み合わせて分析することがある。関係表でも同じような動作を行うことができる。