motogp fun

motogp ファンによる、モトgp 結果、モトgp日程を報告するブログ、ガジェットネタも

Access 入門 第6回 イベント出欠管理作成 (マスターとトランザクション)

会員テーブルが完成したので、今度は開催するイベントを管理する、イベント情報テーブルを作成します。

イベントテーブル


[作成] [テーブルデザイン]で必要と思われる項目を追加。

f:id:motagp:20150622073320j:plain

イベント番号は、作成した順に通番で構わないので、オートナンバー型を指定します。また主キーも付けます。

(オートナンバーは勝手に連番を付けてくれる便利な機能)


閉じて、名前をイベントで保存。

f:id:motagp:20150622073443j:plain

イベント情報を入力。

f:id:motagp:20150622074343j:plain

 

会員情報、イベント情報が完成したので、イベント毎の出欠結果を記録する回答結果テーブルを作成しましょう。

 

回答結果テーブル(イベント回答)

 

[作成] [テーブルデザイン]で必要と思われる項目を追加。

テーブル名は「回答結果」にします。

f:id:motagp:20150622075312j:plain

イベント毎の、会員回答結果なので、主キーをイベント番号+会員番号2つセットで指定。

 

リレーション(親子関係)

[データーベースツール] [リレーションシップ]で各テーブルの親子関係を設定。
会員、イベント、回答結果にリレーションを設定します。

f:id:motagp:20150622080045j:plain

会員と回答結果(会員番号)を線で結び、1対多に設定。(連鎖更新にチェック)

イベントと回答結果(イベント番号)を線で結び、1対多に設定。(連鎖更新にチェック)

この設定で、イベントテーブルに存在しない回答結果は入力できなくなります。

(存在しない会員の回答や、存在しないイベントの回答は登録を禁止する)

 

1側のテーブルをマスター系テーブル(参照される、親データ、等)、

多側のテーブルをトランザクション系テーブル(溜まっていく、子データ、等)。
と呼びます。

f:id:motagp:20150622072928j:plain

 

 以上 次回に続く