none
Progettazione tabelle senza relazioni (un po' da inesperta) RRS feed

  • Domanda

  • Buongiorno a tutti,
    un dubbio nella progettazione di un database (non sono esperta quindi potrei scrivere delle atrocità!). Supponiamo di avere 2 tabelle: tblProdotti e tblPrezzi.
    Nella prima creo un campo pkProdotto come chiave primaria e nella seconda creo fkProdotto che considero la mia chiave esterna. Non imposto nulla attraverso management studio (quindi non vado in "progettazione" e non imposto relazioni)... mi limito solo a creare i campi.
    Risultato finale: quando costruisco una query richiamando le 2 tabelle, non viene mostrata in automatico la relazione perciò la creo unendo graficamente i 2 campi... cosa comporta tutto ciò? Implica solo un passaggio in più che dovrò compiere ogni volta che realizzo query oppure è un errore concettuale profondo non impostare relazioni all'atto della crezione tabelle?

    Spero di essere stata chiara.
    Grazie
    Mara

    giovedì 24 maggio 2018 07:59

Risposte

  • Sicuramente una delle implicazioni (giuste...) è che nella tabella prezzi, in corrispondenza della fk non potrà essere salvato un valore che non sia presente nell'altra tabella (se le id vanno ad esempio da 1 a 10, nella tabella prezzi in fkProdotto non potrai salvare il valore 11, perché non può collegarlo alla pkProdotto della tabella Prodotti non trovando quell'id).

    Se utilizzare o meno le fk fondamentalmente è una tua scelta, ma se vuoi che l'inserimento di valori sia "blindato" in modo da evitare errori quando poi vai ad utilizzare i dati, è sicuramente una buona pratica.

    Chiaramente la relazione viene mostrata solo se quei campi sono realmente collegati.

     
    giovedì 24 maggio 2018 16:52