Sto progettando tabelle in sql per un piccolo sistema di ticketing. Una delle richieste è che un utente / agente possa pubblicare un ticket per un dipartimento o un agente.
Ora se ho una tabella genitore figlio in cui ogni agente appartiene a un dipartimento, finirei con una limitazione che un agente potrebbe essere assegnato a un dipartimento. Non credo sarebbe una buona idea per un bambino avere più genitori.
In pratica sono bloccato a questo punto poiché ogni ticket avrebbe un assegnatario sotto forma di AssigneeID. L'unica opzione che mi viene in mente è creare tre tabelle
table Agents
columns AgentID, AssigneeID
table Departments
columns DepartmentID, AssigneeID
table Assignees
columns AssigneeID, AssigneeTypeID
da dove otterrei l'identificativo univoco e più tardi cercherò di connetterlo al dipartimento o ad un agente.
C'è un modo migliore per farlo?