次のような構造の単一のデータベースが必要です(これはやや単純化されていますが、アイデアは得られます)。
Companies
CompanyID PK
CompanyName
CompanyAddress
OtherCompanySpecificData
Workers
WorkerID PK
CompanyID FK
LastName
FirstName
DOB
AgreementTypeID FK
ProfessionID FK
UserID FK - A worker may need more than one user account
Other UserSpecificData
Professions
ProfessionID PK
Profession
OtherProfessionStuff
AgreementType
AgreementTypeID PK
AgreementTypeName
Description
OtherAgreementStuff
Users
UserID PK -- A Worker may need more than 1 user account
WorkerID FK
UserName
Password
AccountStatus
Groups
GroupID PK
GroupName
OtherGroupSpecificData
UserGroups --Composite Key with UserID and GroupID
UserID PK
GroupID PK
明らかに、物事はもう少し複雑になります、そして私はあなたの要件やビジネスモデルを知りません。たとえば、会社が異なる部門を持つことができる場合は、CompanyDepartmentテーブルを作成してから、さまざまな部門に従業員を割り当てることができます。
等々。
データ構造をよりアトミックに作成できるほど、データベースの拡張に伴う柔軟性が高まります。Googleの用語はデータベースの正規化であり、具体的にはデータベースの第3正規形(3NF)です(効率的なデータベース設計のための最小値と見なされます)。
お役に立てば幸いです。行き詰まっている場合は、遠慮なく詳しく説明してください。SOには多くの大きな助けがあります。