Progettare database in modo professionale (Parte 2)

Pubblicato il 29 Agosto 2008

Se non hai letto la prima parte dell’articolo puoi leggerla qui

Dopo aver fatto l’analisi del nostro problema e aver stabilito i punti fondamentali passiamo alla realizzazione del modello E/R. Per il nostro modello abbiamo due entità:

– squadra
– calciatore

L’associazione che esiste tra queste due entità è di tipo uno a molti poichè una squadra è costituita da N calciatori ed N calciatori costituiscono una squadra.

modello E/R
modello E/R

A questo punto possiamo ottenere il modello logico dei dati, e cioè, si può definire la struttura degli archivi. Il modello logico si ricava applicando le seguenti regole di derivazione:

– Ogni entità diventa un archivio
– Ogni attributo di un entità diventa un campo del record
– L’identificatore univoco di un’entità diventa la chiave primaria nel record
– L’identificatore univoco dell’entità di partenza della nostra associazione uno a molti diventa chiave esterna dell’entità di arrivo associata (cioè diventa un campo nel record del secondo archivio)

Ecco i nostri archivi:

1) Squadra

– ID (chiave primaria) (numerico)
– Nome (stringa)
– Presidente (stringa)
– Anno di fondazione (numerico)
– Città (stringa)

2) Calciatore

– ID (chiave primaria) (numerico)
– Nome (stringa)
– Cognome (stringa)
– Data di nascita (stringa)
– Ruolo (stringa)
– ID_SQUADRA (chiave esterna) (numerico)

Questo problema era molto semplice e solo di esempio, ovviamente, per problemi piccoli o grandi che siano bisogna sempre fare un’attenta analisi al fine di individuare tutte le entità necessarie e le relazioni che tra loro.

Cosa non abbiamo detto? Per realizzare il database usiamo MySQL, Oracle, Microsoft Access?

La scelta sta a voi, in base alla piattaforma su cui sviluppate. Io, per esempio, sviluppo su piattaforma LAMP (Linux, Apache, MySQL, PHP).

Se cerchi un tool gratuito e immediato per disegnare il tuo modello E/R ti consiglio di dare un’occhiata a E/R Model Generator.

Condividi il post con i tuoi amici o colleghi
emawebdesign
Autore: emawebdesign

Full Stack Developer, SEO Specialist, esperto della trasformazione digitale con oltre 20 anni di esperienza.

Pubblicato in: