puntamento chiave della tabella per la propria tabella?
-
19-09-2019 - |
Domanda
diagramma delle classi http://img223.imageshack.us/img223/8558/classdiagram .png
In questa immagine, perché è l'EmployeeID punta ad esso il proprio tavolo, mentre l'id dell'ordine non punta alla tavola del ordine. L'immagine è una foto del database Northwind.
Soluzione
Poiché i dipendenti [EmployeeID] riportano ad altri dipendenti [ReportsTo]. Un ordine che appartiene a un altro ordine fa male il cervello.
Altri suggerimenti
Il EmployeeID
viene probabilmente indicato dal campo ReportTo
. Ad esempio, un dato dipendenti devono rispondere un altro dipendente, utilizzando EmployeeID
come riferimento.
Il OrderID
non punta alla tabella Order perché non ci sono altri campi nella tabella dell'Ordine che utilizza / si riferisce alla OrderID
.
Questo è comunemente indicato come un "self-join".
Si noti che un dipendente potrebbe essere subordinato a un altro (ReportsTo) quindi è necessario l'EmployeeID per quella che è la PK di questa tabella.