Ciao a tutti, mi sto cimentando nel realizzare un progetto di un negozio di informatica tramite una progettazione di un DB e in seguito un sito in php che si interfacci al DB; ma ho dei piccoli problemi che elencherò a mano a mano che descrivo i procedimenti che ho effettuato, intanto inizio con i dettagli:
Costruire un database per la gestione di un negozio di articoli informatici.
Tale negozio dovrà gestire: i fornitori, i clienti, le merci (quindi componenti pc, e pc assemblati in sede tramite le componenti disponibili); e le fatture emesse.
Viene richiesta inoltre la visualizzazione di un avviso di carenza merci, una cronologia degli acquisti (effettuati dai fornitori) e delle vendite (effettuate ai clienti), e gli ordini da effettuare in base alle vendite del mese precedente.
Da ciò ho ricavato il modelo E/R:
http://img33.imageshack.us/img33/8886/immaginesl.png
E la struttura:
CLIENTE (*CF, Nome, Cognome, Telefono, Fax, Email, Indirizzo, Città, Nazione, Cap)
FORNITORE (*PIVA, RagSoc, Telefono, Fax, Email, Indirizzo, Città, Nazione, Cap)
PRODOTTO (*COD, Categoria, Marca, Modello, PrezzoList, QtaDisp)
ACQUISTO (*COD, *PIVA, Data, Quantità, PrezzoAcquisto)
VENDITA (*COD, *CF, Data, Quantità, PrezzoVendita)
ASSEMBLA ( ??? )
I miei "piccoli" dubbi riguardano:
1) Le fatture, secondo voi, va bene gertirle attraverso l'entità acquisto!? Ho fatto così perchè alla fine se pure creo un entità fattura, avrebbe gli stessi campi di acquisto e non avrebbe senso (credo!?);
2) Le chiavi delle entità Acquisto e Vendita, vanno bene!? Cioè, se ad es un cliente acquista due volte lo stesso prodotto, o se io (proprietario) acquisto due volte dallo stesso fornitore, non và, avrei delle chiavi uguali, o mi sbaglio?!
3) Nell'entità Assembla, dovrei gestire i pc assemblati, nell'ER ho fatto una relaz M/N sulla stessa tabella "Prodotto" in modo che il Pc assemblato vada inserito come prodotto; Ma non capisco che campi dovrebbe contenere l'entità assembla!?
Una soluzione, potrebbe essere che piuttosto di fare m/n con la stessa entità prodotto, aggiungevo un entità PC (*CodPC, Nome, Descr) (sermpre relazionata m/n a prodotto) e quindi la relazione sarebbe Assembla(*CodPC, *Cod)... Quadra il mio ragionamento?
Spero che qualcuno abbia la pazienza di darmi qualche dritta! Grazie!![]()

Rispondi quotando
, premetto che questo è solo un progetto di ambito didattico quindi non dovrebbe mai entrare in funzione in un vero e proprio negozio, comunque: