Opinioni e suggerimenti su stuttura database

di il
3 risposte

Opinioni e suggerimenti su stuttura database

Salve, devo creare un database per la simulazione di un negozio, con relative forniture e vendite di prodotti.
Alla fine è uscita fuori una cosa molto simile a quella suggerita da questo sito
http://www.databaseanswers.org/data_models/products_orders_and_deliveries/index.htm
che dovrebbe essere normalizzata perfettamente.

Il problema è che nel mio caso devo aggiungere altre informazioni e nello specifico quelle relative allo stato delle spedizioni.
In pratica nel caso di approvigionamenti devo poter scegliere tra gli stati "Ordinato", "Inviatoci" e "Consegnatoci"
Nel caso di spedizioni devo poter scegliere tra "Ordine ricevuto" "Prelevando contante" "Spedito a domicilio" e "Consegnato"

Considerando che la lista di questi stati deve essere stipata nel database, come mi conviene strutturarla? Cioè, devo fare un'unica tabella specificando in una colonna se lo stato si riferisce agli approvvigionamenti o alle vendite, oppure creare due tabelle distinte per le due diverse tipologie?

Di seguito un'immagine per capire meglio cosa intendo
Allegati:
12003_1cbc2ed9eed1d26856b6ddf980968614.png
12003_1cbc2ed9eed1d26856b6ddf980968614.png

3 Risposte

  • Re: Opinioni e suggerimenti su stuttura database

    Ti conviene fare due tabelle, ti complichi meno la vita.
    Diversamente devi, ogni volta, filtrare per il "tipo tabella" in modo da non avere voci incongruenti nei vari menù.
  • Re: Opinioni e suggerimenti su stuttura database

    Ok, ma poi quando vado a creare le classi in java, è necessario fare una trasposizione 1:1 del database o posso anche semplificarne la struttura?
    Voglio dire, se dovessi rispettare la perfettamente la struttura del DB dovrei creare due classi: StatiSpedizioneApprovigionamenti e StatiSpedizioneVendite

    Considerando che entrambe sarebbero formate dai parametri ID e Nome, non conviene maggiormente creare un'unica classe? E' contemplato questo approccio in un'azienda?
  • Re: Opinioni e suggerimenti su stuttura database

    Secondo me è quasi la stessa cosa. Se preferisci una tabella unica (io farei così), ti consiglio di aggiungere una 3a colonna che discerne ulteriormente. È vero poi che ti converrebbe creare più query che filtrano il valore dell'ultima colonna e associarle di conseguenza.
Devi accedere o registrarti per scrivere nel forum
3 risposte