その質問から:

要約:
- 私のCRUDは、顧客、従業員、支店です。
CustomersとEmployeesは、1つPerson、1つIndividual(個人自体に関連するフィールド)、および1つUser(ログイン目的)に関連付けられています。したがってIndividual、sとUsersは常に1人Customerまたは1Employee人に関連しています。Branchesは1Personつと1つCompany(企業人に関連するフィールド)に関連付けられています。したがって、Companysは常に1Branch人の人に関連しています。このデータベースが表す会社に所属しているため、ユーザーがいませんでした。アプリに認証できるのは従業員です。- は1つ
Employeeに属しBranchます。ABranchには0個または多数Employeeのsがあります。(ええ、図は正しくありません、ごめんなさい!) - 現在、私は役割を区別するために1ビットを使用しています
Employee-私には運用および管理権限を持つ従業員がいます。役割のアクセス許可はコード自体に含まれます。ここで、顧客にも独自の役割があることがわかります...顧客と従業員の両方の役割を管理するためのより良い(そして簡単な)方法を実装するための提案はありますか?
MVCパターンをより適切に使用するために、適切に設計された単一テーブル継承を実現するために、その間違った3NF構造をどのように変更する必要がありますか?
私は少し単純化しようとしました、そして今私はこの新しい構造を達成しました:

それでも改善できますか?どこ?それをどのようにモデル化しますか?