Premessa
Portale di appartenenza: Basi di dati.
Cosa troverai in questa nota:
- Unβintroduzione ai concetti alla base del calcolo relazionale sulle tuple (TRC) e i suoi componenti come le formule (con lβuso di quantificatori universali ed esistenziali) e le target list.
- Una descrizione del TRC con dichiarazione di range tramite lβuso di range list.
Prerequisiti: per comprendere pienamente il contenuto di questa nota, oltre le conoscenze minime che do per scontato che tu sappia giΓ , ti consiglio di aver letto in precedenza queste altre note:
Buona lettura! βοΈπ€
Definizione: calcolo relazionale sulle tuple (TRC)
Il calcolo relazionale sulle tuple (TRC, Tuple Relational Calculus) Γ¨ una delle due branche del calcolo relazionale ed Γ¨ un linguaggio formale di tipo dichiarativo usato per la formulazione di interrogazioni a database di tipo relazionale e basato sul concetto di tuple.
1 - Struttura di unβinterrogazione nel TRC
Per definire comβΓ¨ fatta unβinterrogazione nel TRC, definiamo prima i suoi elementi costitutivi: formula e target list.
1.1 - La formula
Definizione: formula
Una formula Γ¨ un predicato del primo ordine su predicati di base (atomi) del tipo:
- dove Γ¨ una costante.
- .
dove e sono delle variabili e e sono degli attributi.
Il predicato Γ¨ costruito con i soliti operatori:
1.2 - La target list
Definizione: target list
Una target list Γ¨ un insieme di elementi, composti da attributi associati a variabili , che specifica quali sono gli attributi prodotti in uscita dallβinterrogazione.
Notazioni alternative per gli elementi di una target list
Notazione per assegnare nomi agli elementi di una target list
Γ possibile assegnare un nome a un elemento di una target list con la sintassi:
1.3 - Struttura di unβinterrogazione nel TRC
Ora possiamo definire comβΓ¨ fatta unβinterrogazione nel TRC.
Definizione: interrogazione nel TRC
Nel TRC, unβinterrogazione Γ¨ composta da una target list e una formula .
1.4 - Uso della quantificazione universale ed esistenziale
Nella formula possono essere usate sia variabili libere che vincolate da quantificatori universali o esistenziali.
Definizione: quantificatore universale nel TRC
Definizione: quantificatore esistenziale nel TRC
2 - Il TRC con dichiarazione di range
Esiste una versione considerata piΓΉ sicura del TRC: il TRC con dichiarazione di range.
Definizione: TRC con dichiarazione di range
Il TRC con dichiarazione di range Γ¨ una forma esplicita e sicura del calcolo relazionale su tuple (TRC) in cui viene specificato quali sono le relazioni coinvolte dallβinterrogazione.
2.1 - La range list
La dichiarazione delle relazioni coinvolte dallβinterrogazione viene fatta nella range list.
Definizione: range list
Una range list Γ¨ un insieme di elementi, composti da relazioni associate a variabili , che specifica su quali relazioni agisce lβinterrogazione.
2.2 - Struttura di unβinterrogazione nel TRC con dichiarazione di range
Ora possiamo definire comβΓ¨ fatta unβinterrogazione nel TRC con dichiarazione di range.
Definizione: interrogazione nel TRC con dichiarazione di range
Nel TRC con dichiarazione di range, unβinterrogazione Γ¨ composta da una target list , una range list e una formula .
Attenzione: dichiarazione delle variabili nella range list
In unβinterrogazione nel TRC con dichiarazione di range, devono essere dichiarate nella range list:
- Tutte le variabili usate nella target list.
- Tutte le variabili libere (cioè non vincolate da quantificatori universali o esistenziali) usate nella formula.
Fonti
- π« Lezioni e slide del Prof. Pensa Ruggero Gaetano del corso di Basi di Dati (canale B), Corso di Laurea in Informatica presso lβUniversitΓ di Torino, A.A. 2024-25: