Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    E/R e struttura DB negozio informatica

    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!

  2. #2

    up

    up

  3. #3
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    Re: up

    Originariamente inviato da PietroR91
    up
    Prima di arrivare alle fatture:

    1. Perché i clienti non hanno la partita IVA?
    2. Se un fornitore è anche un cliente e viceversa come fai? Non converrebbe collassare le due entità sulla stessa tabella se restano i campi simili (in base alla modellazione pare così)
    3. Come gestisci più fornitori con la stessa partita IVA (il caso degli enti pubblici che hanno più strutture suddivise con stessa p. iva)

  4. #4

    Re: E/R e struttura DB negozio informatica

    [QUOTE]Originariamente inviato da PietroR91
    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!?);
    Secondo me è meglio fare una tabella fattura. Infatti fatturà avrà anche altri campi per dire ad esempio se è stata pagata o meno e in che data, se è stata annulata o meno e in che data, ecc. ecc..
    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?!
    Non sbagli, infatti secondo me per Acquisto e Vendita devi aggiungere un id che le referenzi univocamente. Inoltre aggiungerei un campo data_acquisto e un campo data_vendita
    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?
    Qui non ho capito bene...
    Assembla cosa dovrebbe contenere?????

  5. #5

    Re: Re: E/R e struttura DB negozio informatica

    Originariamente inviato da Joe Taras
    Prima di arrivare alle fatture:

    1. Perché i clienti non hanno la partita IVA?
    2. Se un fornitore è anche un cliente e viceversa come fai? Non converrebbe collassare le due entità sulla stessa tabella se restano i campi simili (in base alla modellazione pare così)
    3. Come gestisci più fornitori con la stessa partita IVA (il caso degli enti pubblici che hanno più strutture suddivise con stessa p. iva)
    innanzitutto grazie per la risposta , premetto che questo è solo un progetto di ambito didattico quindi non dovrebbe mai entrare in funzione in un vero e proprio negozio, comunque:
    1. nei clienti ho deciso di non inserire la PIVA poichè (credo) non sia molto di rilievo (mi rendo conto che potrei aver detto una cavolata! ma non sono molto esperto) potrei aggiungerlo come campo;
    2. ho ipotizzato a inizio progetto che si tratti di un piccolo negozietto che si rifornisce da grandi imprese è quindi molto improbabili che grandi imprese si riforniscano da me;
    3. a questo non ci avevo pensato, quindi teoricamente basterebbe usare come chiave sia piva e ragsoc, ma non credo di implementarlo, per la premessa scritta

    Originariamente inviato da philbert
    Secondo me è meglio fare una tabella fattura. Infatti fatturà avrà anche altri campi per dire ad esempio se è stata pagata o meno e in che data, se è stata annulata o meno e in che data, ecc. ecc..
    e quindi aggiungendo la tabella fattura la dovrei relazionale ad "acquista" e a "vendita", e poi.. vabbè mi spiego meglio con l'e/r mi sa:

    http://imageshack.us/photo/my-images...maginesl1.png/

    Sono sicuro al 1000 x 1000 che non va bene!!! Puoi darmi qualche indicazione sulle relazioni!?

    Non sbagli, infatti secondo me per Acquisto e Vendita devi aggiungere un id che le referenzi univocamente. Inoltre aggiungerei un campo data_acquisto e un campo data_vendita
    Se piuttosto di aggiungere un id, rendo i campi "data" e "ora" (aggiungendolo) come chiave; quindi ACQUISTA(*codcliente, *codprod, *data, *ora, qnt)?

    Qui non ho capito bene...
    Assembla cosa dovrebbe contenere?????
    questo è il punto in cui ho più dubbi.. allora, il negozio, dovrebbe assemblare pc, con le componenti disponibile (Quindi con i "Prodotti") e venderli, quindi, il metodo (secondo me) meno ingombrante, sarebbe:
    Prodotti( *codprod, ecc)
    PC_Assembl(*codpc, nomepc (ad es "pc per ufficio"))
    Assembla (*codpc, *codprod)

    Però così facendo, come faccio a poterlo vendere? perchè non verrebbe relazionato all' entita "Acquista".. Non riesco ad uscirne in nessun modo :s
    Spero di essermi spiegato meglio xD
    Grazie per l'aiuto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.