I am not a fan of having more than two fields (eg: pk1 & pk2) in a junction/association table. I do have a situation, however, and not sure what would be the best approach to resolve it.
Table 1: Contract (id, price, description)
Table 2: Person (id, firstname, lastname)
Table 3 (junction/association) person_contract (person_id, contract_id)
So a contract can have one ore more persons and a person can have one or more contracts. Hence the need for a junction/association table; person_contract.
Up to here there is no problem. Now persons per contract have a sequence to represents their importance to a given contract. For example: - person1, contract1, sequence = 1 - person2, contract1, sequence = 2 - person3, contract1, sequence = 3 - person1, contract2, sequence = 2 - person4, contract2, sequence = 1
The question is where to save the person sequence for a contract? Adding the sequence to the junction/association table doesn't look right to me. I am looking for a better approach if possible.