I database relazionali
DataBase Management System

I database relazionali si sono ormai definitivamente imposti sugli altri sistemi per la gestione di basi di dati (DBMS: DataBase Management System) di tutte le dimensioni e su tutti i tipi di piattaforma hardware e software. Ciò soprattutto grazie alla:
robustezza del modello teorico
(si utilizzano strutture basate su concetti della teoria matematica degli insiemi)
semplicità del linguaggio di interrogazione
(possibilità di esprimere domande in un linguaggio ad alto livello: linguaggi procedurali e linguaggi non procedurali) .
Inoltre è disponibile un ampio corredo di strumenti per la progettazione, lo sviluppo e la gestione di database relazionali.

Il modello relazionale

Un database è costituito da:
a) più tipi di dati che rappresentano tipi di informazione; ogni tipo di informazione è caratterizzato da alcune proprietà; ogni informazione è rappresentata da valori ben precisi per ciascuna delle sue proprietà;
b) corrispondenze tra tipi di informazione; ogni corrispondenza è rappresentata indicando quali informazioni sono legate tra di loro per mezzo della corrispondenza stessa.

Nel modello relazionale è possibile usare una sola struttura: la relazione.

Un database è rappresentabile attraverso relazioni.

Relazioni che rappresentano informazioni
In questo caso un tipo di informazione può essere rappresentato per mezzo di una relazione; gli attributi di una relazione sono tanti quante sono le proprietà per mezzo delle quali una informazione di quel tipo è descritta. Ogni tupla della relazione rappresenta una informazione; le componenti della tupla sono i valori delle proprietà che descrivono quella informazione.
Relazioni che rappresentano corrispondenze
Una corrispondenza tra tipo di informazione, nel modello relazionale, è una corrispondenza tra relazioni in quanto ogni tipo di informazione è rappresentato per mezzo di un appropriata relazione. Una corrispondenza dalle relazioni A1, A2, ..., Ai nelle relazioni B1, B2, ..., Bj è rappresentata per mezzo di una relazione R e gli attributi della relazione sono tutti e soli gli attributi che costituiscono le chiavi primarie effettive delle relazioni A1, A2, ..., Ai, B1, B2, ..., Bj. Le tuple di R sono costituite da tutti e soli quei valori <a1, a2, ..., ai, b1, b2, ..., bj> tali che a1, a2, ..., ai e b1, b2, ..., bj sono i valori che appaiono, rispettivamente, nelle chiavi di una tupla di A1×A2×...×Ai e nelle chiavi di una tupla di B1×B2×...×Bj che sono associate tra di loro dalla corrispondenza considerata.

Un database è descritto, nel modello relazionale, da un insieme di relazioni che rappresentano sia informazioni sia corrispondenze tra informazioni.

L'insieme degli schemi delle relazioni usate per rappresentare le informazioni e le corrispondenze è detto schema relazionale del database; l'insieme dei valori attuali delle relazioni è detto database relazionale.

È interessante vedere come si può implementare un database relazionale. Si può innanzitutto osservare alcune analogie che rappresentano un criterio di implementazione:

una relazione Run file F
schema della relazione Rformato dei records del file F
tupla della relazione Rrecord del file F
attributo della relazione Rcampo del file F
attributi nella chiave di Rcampi nella chiave del file F

Quasi tutti i sistemi per la gestione di database relazionale utilizzano questo criterio di implementazione delle relazioni.