Skip to main content

Cos'è uno schema di database?

Uno schema di database è un modo per descrivere la struttura e le relazioni delle informazioni che verranno utilizzate e tenute all'interno di un database.Alcuni schemi sono scritti in una lingua che può essere interpretata dal software di gestione del database (DBMS), mentre altri sono diagrammi completamente astratti.Gli elementi primari di uno schema di database sono entità e tabelle.Un'entità è un modello di dati per un oggetto in un database, mentre una tabella è una sequenza memorizzata di valori o altre entità.Come un progetto, uno schema ben progettato può essere utilizzato per vedere esattamente come viene costruita l'architettura di un database.

Schemi di database sono talvolta necessari per mostrare esplicitamente come viene archiviato il dato e come si collega al resto del database.Un'entità è una rappresentazione di una raccolta di dati.Come ogni struttura dei dati, può avere un numero di campi.Tuttavia, le entità hanno un campo identificativo univoco.Questa è chiamata chiave primaria.

Una chiave primaria è un collegamento a una tabella.La chiave deve essere unica tra tutti gli altri elementi nella tabella.Un esempio sarebbe un numero del cliente per un database che tiene traccia degli acquisti di archiviazione.Ogni entità può avere una sola chiave primaria.

Entità possono anche avere un numero qualsiasi di chiavi straniere.Una chiave straniera è spesso la chiave primaria di un'altra entità in un'altra tabella.Nell'esempio sopra, una chiave estera potrebbe essere un numero di ordine per quel cliente.

In database relazionali, le chiavi primarie ed esterne vengono utilizzate per esprimere il concetto molto importante di relazioni da uno a molti.Nell'esempio fornito, un cliente può avere molti ordini e numeri di ordine diversi.Il contrario non è vero, perché l'ordine può avere un solo cliente.Le relazioni da uno a molti sono parte del motivo per cui è necessario uno schema di database.

Un altro tipo di relazione è chiamato molti a molti.Questa è un'istanza in cui un'entità non può avere solo molte relazioni con un singolo tipo, ma può anche essere inclusa in molti tipi da un altro tipo.Un esempio di ciò è come qualsiasi numero di clienti può ordinare lo stesso prodotto.Allo stesso tempo, un cliente può ordinare un numero qualsiasi di prodotti.Questa relazione da molti a molti è comune ma richiede una modellazione di dati speciali per funzionare all'interno dello schema del database.

Mentre ci sono alcune convenzioni standard che vengono seguite durante la creazione di uno schema di database, ci sono anche molti modi per rappresentare i modelli di dati.Esattamente come ogni oggetto schema è rappresentato in un design astratto è fino alla discrezione del modellatore di dati.In alcune situazioni, un sistema DBMS sarà in grado di accettare uno schema di database che è scritto in modo specifico e implementare effettivamente parte del design automaticamente.