2012-03-08 13 views
0

私は基本的にダウンタイムイベントは、以下の情報が含まれている、ダウンタイムを保持するテーブルが必要になります。
EVENT_ID、START_TIME、END_TIME、サービスは、主な問題は、私はこれを設定する方法がわからないということです

を引き起こし私はこのような混乱で終わるしたくないので:

複数の同時多対多リレーションシップが2つある場合、データベーススキーマを設定するにはどうすればよいですか?

基本的に
ID | EVENT_ID | START_TIME | END_TIME | SERVICES | CAUSES 
01   455  12:00   12:30  FINANCE  NETWORK 
02   455  12:00   12:30  ADVANCE  NETWORK 
... 
13   455  12:00   12:30  REFRESH  DATABASE 

...複数のサービスがある場合ので、単一障害のために、私は、テーブル内の多くの多くのエントリを持っているでしょう/その結果、表は実際にはすべての組み合わせを保持します。

これを効率的に整理する方法はありますか?

答えて

3

はい - 少しを正規化:別のサービステーブル

+0

とypercubesコメントを反映するためにを編集し

EVENT ------ event_id start_tm end_tm description EVENT_SERVICE ------------- event_id service_id employee_id start_tm end_tm (other info as needed) SERVICE --------- service_id description CAUSE ------- cause_id description EVENT_CAUSE ----------- event_id cause_id 

は 'SERVICE'テーブル欠けありませんか? –

+0

ええと、どうやってリンクされていますか?たとえば、メインのEVENTテーブルはサービスと原因のリストにどのようにリンクされていますか?また、EVENT_CAUSEテーブルは、単一のイベントIDのいくつかの原因をリストするので、かなり繰り返しますか? – antonpug

+0

@ypercube - はいサービスが反復可能だった場合...パターンは、あなたが知っているようにEVENT – Randy

関連する問題