今日は前回学習した「リレーションシップ」で重要な要素「主キー」を学びます。主キーは色々な意味を持ちますが私が一番重要だとおもう役割は

データを特定する番号

だと思います。
例えば社員番号だったら、001山田 002佐藤・・・と続く時に00Xにあたる社員番号はそのテーブルの中で「一つ」である必要があります。
001山田 001佐藤 だと001という社員番号が山田と佐藤の二人のものになってしまい、個人を特定することができなくなります。

なのでそのテーブル内で1個しかない番号、データにする必要性があります。
※山田さんが2名いたら「一つ」にはならず、名前を主キーとしては使えなくなります。

ということで前置きが長くなりましたが早速実践

  1. テーブルを作成する。
    ※テキストの通りまず2つのテーブルを作成します。作成と同時に主キーを貼っていきます。
    「作成」ー「テーブルデザイン」をクリック
  2. それぞれのフィールドを下記データ型にして名前を「テーブル-請求」にして作成
  3. ここで保存すると「主キー」を貼ってないよと怒られます。
    テーブルは先程説明した通り「一つ」を特定する必要性があるのでどこかを主キーにします。
    ここでは「請求ID」が一つになるので「請求ID」を主キーにします。
    「はい」を押すと通常一番上のフィールドが主キーに設定されます。
  4. 主キーを変更したい場合はフィールド名の左横のグレー部分を選択して右クリックして「主キー」をクリックすると主キーを指定できます。
    ※ちなみに主キーは2つ以上のフィールを指定することも出来ます。たしかそうだった・・・はず。
  5. 続いて「テーブル-請求明細」の作成です。上記と同様に入力します。主キーも設定しましょう。
  6. ここで一つ思い出しました。
    データ型を選ぶ時マウスで選びますが、「Alt+↓」を押すとデータ型のプルダウンが表示されます。
  7. リレーションシップ
    テーブル同士を関連付ける。
    ※これ昔理解するのにすごく苦労しました。
    要するに請求書をみると
    一つの請求書に複数の請求明細が発生します。

    A社(請求IDを)に
    ボールペン(請求明細)
    シャープペン(請求明細)
    ・・・

  8. 今回リレーションは両テーブルの「請求ID」に貼ります
  9. リレーションシップを貼るレコードをリレーションシップにドラッグアンドドロップします。
  10. 「テーブル-請求」が表示された
  11. 同様に「テーブル-請求明細」もドラッグアンドドロップします
  12. 「テーブル-請求」の「請求ID」から「テーブル-請求明細」の「請求ID」にドラッグアンドドロップ
  13. リレーションシップボックスが表示されます。
    赤丸部をとりあえず今は下記のようにします。

    前述で説明した通りデータは
    「テーブル-請求」1件 に対して 「テーブル-請求明細」は複数件発生します。

    この関係を表示したものが「リレーションシップの種類」で「一対多」となっています。

    詳細はまた後で学習するようですが、概念としては
    この種類を参照整合性といい
    フィールドの連鎖更新にチェックを入れておけば「テーブル請求」(1)で変更があった場合「テーブル-請求明細」(多)に反映されます。

    レコード連鎖削除は「テーブル請求」(1)で削除された場合「テーブル-請求明細」(多)の該当レコードが削除されるらしいです。

    ホントかなぁ。

    「けんしょう」します。

    1. ちょっと見にくいのですが「テーブル-請求」に下記データをセットします。
    2. この状況で「テーブル-請求」にない「請求ID 3」を入力してデータを登録しようとすると怒られます。
    3. 今度は逆に「テーブル-請求明細」に「請求ID 2」が残っている状況で「テーブル-請求」の「請求ID 2」を削除しようとすると、まだ「テーブル-請求明細」に2のデータが残っているので怒られます
    4. 請求明細の請求ID 2のレコードを消すと、請求テーブルの請求IDを消すことが出来ます
      1. 今度は「テーブル-請求」の請求ID 2を削除することができました。

        このようにして不要にデータを削除したり、追加出来ないように 先程のリレーションシップのところで設定することで、データベースの整合性を保つことができるようです。

【使用している参考書】
※このブログは私自身の勉強の記録ブログなので自分がわかっていることは省きながら進めています。故に抜け漏れが多いです。きちんと学習したい方は基本テキストを準備して学習されることをおすすめします。

【参考テキスト】
下記書籍を参考に独学させて頂いています。
図が多くて分かりやすいです。

できるAccess 2019 Office 2019/Office 365両対応 [ 広野忠敏 ]

価格:2,178円
(2021/4/19 14:25時点)
感想(1件)