CDアルバム管理ソフトを作ってみよう! |
●リレーションの作成● |
|
データベースにおいて、リレーションを設定するとは、「テーブルとテーブルを結び付け、新たな仮想テーブルを作る約束事」と、とりあえず理解してください。 |
|
「テーブル」と「リレーション」はとても密接な関係があります。 |
多くの場合、最初にリレーションを想定してからテーブルの枠組みを考えるのです。 |
さっきはテーブルを二つ作ってしまいましたが、これがもし1つだったらどうだったでしょうか。 |
|
ID
|
アーティスト名
|
アルバム名
|
曲名
|
演奏時間
|
1
|
ABC
|
あいう
|
アイウ
|
3分25秒
|
2
|
ABC
|
あいう
|
カキク
|
5分18秒
|
3
|
ABC
|
あいう
|
サシス
|
4分43秒
|
4
|
ABC
|
あいう
|
タチツ
|
5分21秒
|
|
|
アーティスト名とアルバム名がかなり重複してしまいます。
|
この問題を解決するために、テーブルを「メイン」と「サブ」にわけたのです。 |
ではさっき作成したテーブルを開いて、「ツールメニュー」の「リレーションシップ」をクリックして下さい。
|
リレーションシップと表題のついた何もないフォームが表示されます。 |
このフォーム上で右クリックをし、「テーブルの表示」を選び、さっきの「メイン」と「サブ」のテーブルをクリックし「追加」ボタンを押してください。テーブルが二つ現れましたね。 |
|
|
|
「メイン」テーブルにある「ID」をクリックしながら、「サブ」テーブルの「番号」にドラッグします。 |
すると小さなプロパティ画面が現れますね。 |
次に「参照整合性」をチェックします。 |
これはレコードの入力や削除を行っても、テーブルの間のリレーションシップが維持されるようにするための規則です。 |
|
「フィールドの連鎖更新」と「レコードの連鎖削除」もチェックします。 |
これらは主テーブルの主キーの値を変更・削除すると、自動的に関連テーブルの内容が変更・削除され、参照整合性が保たれる役割を果たします。 |
|
逆にオフにすると変更や削除ができなくすることができます。 |
「作成」ボタンをクリックして、リレーションを設定します。 |
レイアウトの変更も保存して終了します。 |
|
 |
リレーションはわかりましたか?次はフォームです。 |
|
|
|
|