Come strutturare e connettere la mia tabella "prezzo" alla struttura della tabella del database relazionale esistente?

1

Ho diverse tabelle: product , category , addon in varie relazioni relazionali.

L'hostrutturatoinquestomodoperché:homoltiproductscheappartengonoallorocategoryspecifico.Perognicategoriacisonospecificheaddons.

Tabellaprezzi

Quellochevogliofareèaggiungereunatabelladeiprezzichepotròinterrogareperscoprirecosecome

  • (principale)Quantocostal'addondelprodottoperquestospecificoprodotto.
  • (opzionale)qualèilprezzocorrenteperilprodotto.Cioè,possoaverediversiprezzinellatabellacheappartengonoallostessoproduct-addon,mahannotempidiversi(date)diessere"attivi".

Questa è la struttura che sto pensando di usare (aggiornato come per i commenti / suggerimenti):

Èunbuonmodoperstrutturareiltavolo?Chiamereiquesta"Opzione 1", dove "Opzione 2" sarebbe quella di creare una nuova tabella chiamata product_addon come colla tra product e addon e quindi usare la chiave esterna product_addon_id nella mia tabella price .

    
posta Dennis 01.09.2016 - 23:00
fonte

2 risposte

1

Opzione 1 (perché è la più semplice), ma ti suggerisco di chiamare la tabella dei link tra prodotti e addon non "price", meglio chiamarla "product_addon".

L'opzione 2 è necessaria solo se hai bisogno di un elenco di prezzi per lo stesso addon in un prodotto (qualunque cosa ciò significherebbe).

    
risposta data 01.09.2016 - 23:17
fonte
0

Non sono sicuro di cosa sia un "addon". La mia intuizione mi dice che un addon è un tipo di prodotto che non può essere acquistato da solo. In quanto tale, dovrebbe essere rappresentato sia nelle tabelle degli addon che dei prodotti e essere identificato da un ID di prodotto come i normali prodotti. La tabella degli addon include una chiave esterna aggiuntiva o altri dati che specificano quali prerequisiti sono necessari per acquistare l'addon.

Per quanto riguarda dove archiviare il prezzo ... Suggerirei che al tuo modello mancasse un concetto di "offerta". Un'offerta includerebbe l'ID prodotto come FK e includerà le date di inizio e fine, oltre naturalmente al prezzo. Poiché un addon è un tipo di prodotto, non è necessaria alcuna chiave aggiuntiva per la tabella degli addon. Hai solo bisogno dell'ID prodotto.

    
risposta data 02.09.2016 - 01:55
fonte

Leggi altre domande sui tag