私は、市民と労働者の2つのカテゴリーの人が行うことができるさまざまな種類のイベントに関する情報を含む表を持っています
だからそれぞれのために私はそれぞれのテーブルを持っています
civil{  civil_id, name, age,telephone...} the  primary key is civil_id
worker{ worker_id, name, duty, department...} the  primary key is worker_id
次に、イベントテーブルにすべての可能なイベントのリストがあります
event {type_of_event} the  primary key is type_of_event
その後、他のテーブルに情報を保存する予定です
偶数タイプで、仕事をした人(労働者または市民)
id  event_type       date      person
-----------------------------------
1   type1         12-12-12     x 
2   type1         05-12-10     y
3   type2         02-12-12     y
この設計では、誰がその仕事をしたかを関連付ける方法がわかりません。ある種の人(別名civil)しかいない場合、この最後のテーブルのpersonフィールドにcivil_idのみを格納します。それが市民か労働者かを知っていますが、他の中間テーブルが必要ですか?

