Old structure:
The old ProgrammeMembership table structure was :
...
Under the old table structure, when we need to extract a real programmeMembership, we use personId
, programmeStartDate
, programmeEndDate
, programmeId
, programmeMembershipType
fields for identification. When there’s a field above with missing data(data issue), some problems occurs for querying all curriculum memberships against a specific programmeMembership.
Why the refactoring is necessary?
Distinction between 2 entities
Current(new) table structure:
...