会社のイントラネット アプリケーションを開発しています。同社は、多くの事業分野、部門、部門、ユニット、グループが存在する複雑な構造を持っています。私はこれらすべての世話をしなければなりません。部門レベルで働く従業員もいれば、ユニットレベルで働く従業員もいます。現在の問題は、データベースの設計にあります。データベースの設計方法について混乱しています。最初に、次のように設計することにしました。
Employees: Username, Name, Title, OrgCode
Departments: OrgCode, Name
Divisions: OrgCode, Name
Units: OrgCode, Name
しかし、前に言ったように、一部の従業員は部門の下で働いているので、これらすべてのテーブル間の関係をどのように作成するかが問題です。Departments、Divisions、および Units テーブルの OrgCode への外部キーとして、Employees テーブルの OrgCode を使用することは可能ですか?
おすすめのデザインを教えてください。
更新: @wizzardz は優れたデータベース設計を行いました。ここで必要なのは、このデータベース設計に適合するデータの例を用意することだけです。データベースで使用している一連のデータを次に示します。次の情報を持つ従業員がいると仮定します。ユーザー名: JohnA 名前: John タイトル:エンジニア組織コード: AA
また、部門 AA があるとします。このデータをデータベース設計にどのように分配するのでしょうか?