Concetti Chiave
- Il modello relazionale utilizza tabelle collegate tramite chiavi primarie ed esterne su domini comuni.
- I linguaggi speciali del modello relazionale si basano su concetti matematici e programmazione non procedurale.
- La programmazione non procedurale tratta le relazioni come insiemi e non riga per riga, a meno di necessità specifiche.
- La sinteticità della programmazione non procedurale riduce il codice rispetto ai linguaggi gestionali tradizionali.
- Gli operatori relazionali si classificano in algebrici, insiemistici e di aggiornamento, ciascuno con funzioni specifiche.
Linguaggi speciali.
In base al modello relazionale, lo schema logico del database deve esser costituito da un insieme di relazioni che corrispondono a tabelle collegate tra loro attraverso coppie di attributi chiave primari-chiave esterna definita su dominio comune.
Per l'elaborazione delle informazioni contenute nelle relazioni, il modello relazione offre una serie di linguaggi speciali che si basano sui concetti matematici e su un approccio alla programmazione non procedurale, nel senso che non utilizzano un'elaborazione riga per riga delle ennuple delle relazioni (a meno che non sia esplicitamente necessario), ma trattano invece le relazioni come insiemi finiti di righe su cui applicare, ad esempio, alcuni tra i principali operatori insiemistici.
L'approccio alla programmazione è quindi del tutto diverso da quello dei precedenti modelli utilizzati nei DBMS di vecchia generazione, che prevedevano la navigazione sullo schema dei dati per il reperimento delle informazioni.
La programmazione non procedurale consente una notevole sinteticità, esaurendo in poche righe ciò che nei tradizionali linguaggi di programmazione gestionali occupava pagine di codice.
La classificazione
Gli operatori di un linguaggio relazionale possano essere classificati in:
-
[item] Operatori algebrici: effettuano operazioni di estrazione e selezione sulle singole celle del database;
[item] Operatori Insiemistici: effettuano operazioni su gruppi di elementi trattandoli come insiemi e utilizzano i classi operatori operazionali degli insiemi quali unione, intersezione, ecc.;
[item]Operatori di Aggiornamento: sono quelli relativi all'immissione e/o modifica dei singoli dati;