今回は、外部キーにつて説明します。
このブログで言いたい事は、
外部キーは、主キーと仲間です。
目次
ACCESSのMOS試験対策 その3
こんにちは。伊川(@naonaoke)です。
今回は、ACCESSのMOS試験対策について解説します。
下記の記事を読んでから、このブログを読んでいただくと、より理解が深まります。
試験項目で、外部キーが、出題範囲で設定されています。
言葉自体は、馴染ではないですが、難しく考えないことです。
しかし、この外部キーに関しては、リレーションの結合で、深くかかわってきます。
このブログはこんな人にお勧め
- ACCESSのMOS試験を勉強している人
- ACCESSのリレーションがイマイチ理解できていない人
- リレーションの結合の種類を理解できていない人
このブログを読み終わるころには・・・・・・
外部キーとは?
一言でいうなら、テーブルに沢山ある値のことです。
ここは、MOSで必ず問われます。
これは、データベースという理屈で理解しようと思ってもなかなかできません。
実務の中で、理解していきましょう。
今回は、顧客IDで別途解説をしたいと思います。
顧客IDを外部キーに設定 作業手順 その1 別途テーブルを作成する
このようなテーブルを作成します。
ここで、注目したいのは、山田商事が2つありますが、顧客IDで判別ができます。
絶対にやってはいけないことは、名前、または、社名を主キーにしてはいけません。
同名の会社は、法律である程度制限されていますが、人間の場合は、同姓同名はあり得ます。
同姓同名の社員が入社した場合は、データベースを初めから作成しなければなりません。
このようなデータベースの作成は絶対にやめてください。
顧客IDを外部キーに設定 作業手順 その2 リレーションを設定
上の図のように設定しました。
クエリで、下記のように設定しました。
会社名が追加されました。
実は、Q_販売価格参照には、K008の伊川商事は、抽出されていません。
ここからが、結合の種類の話になります。
顧客IDを外部キーに設定 作業手順 その3 内部結合
内部結合は、一番カンタンな結合方法になります。
販売COと、MT_顧客に合致した値だけを抽出します。
販売COには、伊川商事、つまりK008はないので、伊川商事は表示されません。
顧客IDを外部キーに設定 作業手順 その4 左外部結合
左外部結合は、実務でよく使います。
この設定が、左外部結合です。
MT_顧客の全レコードを反映させます。
顧客IDを外部キーに設定する 作業手順 その5 右外部結合
これは、MT_顧客と直接関係はありません。
上の図の設定が、右外部結合です。
この設定の効果は、この場合でいうと、入力漏れを確認することが出来ます。
販売COのレコードを全部参照しますので、販売COの入力漏れを確認することが出来ます。
ここがポイント
MOS試験では、左外部結合が多いと思います。結合の種類で勉強するのではなく、どのレコードを全部表示させたいのかという事を確認しましょう。どの結合も重要ですので、頭の中で、場合分けができるようにしてください。
まとめ
今回は、結合の種類を紹介しました。
前回と今回は、ACCESSを勉強するにおいて本当に重要事項です。
ここをクリアすると、ACCESSは、もっと、身近に感じられると思います。
今回も最後まで読んでいただきありがとうございました。
今回のサンプルファイルは、No205です。
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。