AnsweredAssumed Answered

リレーションのリレーション

Question asked by youkazu7777 on May 13, 2010
Latest reply on May 16, 2010 by shin

タイトル

リレーションのリレーション

フォーラムに投稿

次のような事が可能かどうか教えて下さい.

 

【商品マスタ】→授業を「商品」として管理し,IDと値段を持つテーブル

・商品ID

・商品名

・値段 

 

【生徒テーブル】→生徒が選択している授業を「商品ID」フィールドにIDで入力

・生徒ID

・生徒氏名 

・商品ID[複数]

 

【請求口座テーブル】→1保護者(家庭)につき請求用の口座が1つあると考える.兄弟の請求は一つにまとめる

・親ID

・親氏名 

・口座番号

 

【親子関係テーブル】 →兄弟関係がある場合,二人目以降の授業料を割り引くために親子関係を利用して兄弟関係を把握する

・親ID

・生徒ID

 

上記の4つのテーブル定義があります.

リレーションは次のようにしてみました.

 

【商品マスタ::商品ID】 ─【生徒テーブル::商品ID】

            【生徒テーブル::生徒ID】─【親子関係テーブル::生徒ID】

                        ┌【親子関係テーブル::親ID 】 

                  【請求口座テーブル::親ID】

 

 

 

このような構成が正しいのかは分かりませんが,このデーターベースがおこないことは,

1.各請求口座に請求の内訳を書いた明細プリントを発行

2.保護者(親)に対してプリントを発行し,その親の子供は一覧でプリントに表示されている.

3.兄弟の授業料は割引きになる. (割引き率を入力したり,合計金額を計算するフィールどが必要だが,どのテーブルに持たせるべきか分からない)

 

 

請求口座のレイアウトで,生徒(子)一覧をポータルで表示すると,生徒が選択している授業のIDは関連レコードとして表示できますが,

その授業IDが更にリレーションを組んでいるわけなので,そのリレーションの先にある料金は取得することができない.

 

リレーションのリレーションというようなテクニックがあるかということになると思いますが,,

こういう場合は,ルックアップで生徒テーブル自体に値段をコピーしておくしかないですか? 

 

また, 兄弟の料金の割引き率などはどのテーブルにフィールドを持たせればよいのでしょうか.

 

Outcomes