Access 入門 第4回 イベント出欠管理作成 (リレーションシップ)
テーブルの関連図設定(参照整合性)
グループテーブルとそれを参照する会員テーブルが完成しました。
ではテーブルの関連性を設定します。
データーベースタグを開き、リレーションシップをクリック。
テーブルの表示をクリックして、グループテーブルと会員テーブルを追加。
表示したテーブルの会員:グループ番号から、グループ:グループ番号に、ドラッグして線を結びます。
指定が成功すると、リレーションシップの子画面を表示。
右にグループ:左に会員 一対多と自動で表示。
グループの1行に対して、会員は複数このグループに所属する事を宣言。
参照整合性は親がテーブル(一側)が変化したら何しますか?の宣言です。
・フィールドの連鎖更新:グループ番号が変わったら自動で会員側も更新します。
・レコードの連鎖削除:グループ行を削除したら、これを利用していた会員の行も自動で削除します。(ここでは使いません)
指定が終わったら作成で保存。
閉じるで保存。
参照整合性の結果
では、リレーションシップを使う事で何が便利になったのでしょうか。
間違い入力の禁止
会員入力で、グループ番号にグループに存在しない番号を入力すると。
改行すると、グループに存在しなよエラーが表示、行移動できなくなります。
グループ番号の変更
もしグループ番号を変更したくなった場合、グループテーブルを開き、変更したい行のグループ番号を変更するだけで、会員で使っている行が自動で更新されます。
例ではチームBを20番に変更。
2行目のチームBが自動で変わりました。
グループテーブルの、主キー内容を変更する事は無いと思われますが、例えばメールアドレス等を主キーにした管理テーブルを作った場合、アドレスの変更が予想されます。
よく使うのが、親子関係のテーブルで、請求書など表題+合計額に、複数の明細情報を持つ2個のテーブルを利用する時です。
関連データの自動表示
グループテーブルを開くと行の左端に[+]マークが追加されています。
これをクリックすると、使っている会員テーブルが下に表示できます。
べんり~~と言いたい所ですが、私はこの機能で得した事はありません。
以上 次回に続く