View Full Version : Disegnare DataBase
...Esistono delle guide (magari online) sulla costruzione dei DB?
...Come, dopo aver individuato le entità e le relazioni, disegnare uno schema ER corretto...
...come trasformarmare lo schema Enrità-Relazioni in un DB...
...eccetera...
texerasmo
06-02-2004, 10:31
Prova a cercare togheter
Di solito i programmi migliori sono a pagamento, vedi erwin, e compagnia bella. Puoi provare anche db-main di cui esiste una versione demo.
ciao ;)
...scusate... colpa mia... forme mi sono espresso male...
Non cercavo un software per disegnare... non voglio fare i disegnini... parlavao di disegno di database inteso come studio di db ottimizzato al massimo!!! :p :O :p
Ma il diagramma E-R serve proprio per ottimizzare al massimo.
Tradurlo in tabelle non e' la parte piu' difficile, IMHO.
Qual e' la tua difficolta'?
Scelta del db? Interfaccia ?
E' vero... tradurre in tabelle lo schema ER è facile... devo però, per prima cosa, chiarirmi come identificare entità e relazioni... :p anche se credo di esserci più o meno riuscito... traducendo lo schema nelle tabelle che mi serviranno per sviluppare l'applicazione che dovrei realizzare...
Si tratta, più o meno, di una applicazione per l'help desk... una gestione dei contatti con i clienti/chiamate d'assistenza...
le entità che ho individuato sono
Cliente - Programma - Operatore - Chiamata
Cliente-N-N-Programma
Cliente-1-1-Chiamata
Chiamata-1-N-Programma (1 chiamata ha 1 programma ma per un programma ci possono essere più chiamate)
Chiamata-1-N-Operatore (1 chiamata ha 1 operatore ma per un operatore ci possono essere più chiamate)
Cliente avrà 1 campo chiave (id_CLiente)
Programma avrà 1 campo chiave (id_Programma)
Operatore avrà 1 campo chiave (id_Operatore)
Chiamata avrà un proprio id_Chiamata ed i campi di collegamento con le altre tabelle (id_Cliente, id_Programma, id_Operatore)
Ora resta da scegliere il DB... Il software che gestirà il tutto sarà sviluppato in Delphi...
Di solito le relazioni 1 a molti (1-N) e molti a molti (N-N) vengono tradotte in tabelle separate.
Nel tuo esempio la tabella chiamata non puo' avere per chiave solo il campo id_Chiamata, perche' allora duplicheresti anche tutte le info della chiamata (tipo descrizione, ecc...) per tutte le occorrenze degli altri campi.
forse mi sono espresso male (come al solito :( )...ma la mia tabella chiamata ha come campi chiave id_Chiamata, id_Cliente, id_Programma, id_Operatore... ;)
Ma le informazioni della singola chiamata nella tabella Chiamata non ci sono? Tipo descrizione, ora, ecc...
Altra cosa, ma non e' assolutamente vincolante. Io l'ho scoperto da poco e mi sembra pratico.
Le tabelle le puoi chimare t_<nome tabella> mentre i campi f_<nome campo>. Questo facilita la lettura nelle query.
...si... io h provato a chiamare le tabelle tbNOMETABELLA tb_NomeTabella... esistono miliardi di alternative... ;)
dipende poi da tanti fattori la scelta o meno di un certo tipo di nomenclatura... ;) ;) ;)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.