Attualmente sto cercando di progettare meglio una struttura di database per i valori predefiniti in cui un riferimento ai valori predefiniti preimpostati viene mantenuto globalmente, ma il sistema è abbastanza flessibile da consentire l'aggiunta di nuovi valori predefiniti.
Database:
Default Fruits
----------------------------
ID: Name: Colour:
----------------------------
1 Apples Green
2 Oranges Orange
3 Bananas Yellow
User Fruits
---------------------------------------------
UserID: DefaultID Name Colour
---------------------------------------------
10 1
10 NULL Plums Purple
10 2
L'utente 10 in questo scenario genererebbe un menu a discesa di mele, prugne e arance.
Con la struttura del database di cui sopra, il mio problema è che ho bisogno di essere in grado di cambiare il colore di una mela in nero per un particolare utente, ma non di cambiarlo globalmente. Se aggiungo automaticamente i valori predefiniti per ciascun utente ai frutti degli utenti, potrei potenzialmente rimanere con i record orfani. C'è un approccio migliore alla progettazione dei DB da considerare per questo scenario o quanto sopra sembra ragionevole?