uni
Questo è una famiglia di linguaggi dichiarativi basati sul calcolo dei predicati del primo ordine. Un altro modo per esprimere query oltre all’Algebra Relazionale.
In questi linguaggi invece di descrivere il modo in cui arrivare al risultato, noi specifichiamo le proprietà che deve avere il risultato, senza preoccuparci di come il Database ci arrivi.

Questa famiglia si divide in più gruppi ma noi affrontiamo solo:

  • TRC: calcolo (relazionale) sui domini:
  • DRC: calcolo (relazionale) sulle tuple con dichiarazioni di range
    • su questo si basa l’SQL.

Noi useremo una notazione non posizionale.
Le espressioni hanno la seguente forma:

Calcolo relazionale sui Domini

Le espressioni hanno la seguente forma:

dove:

  • è una formula a partire da formule atomiche, connettivi logici, booleani e quantificatori. Le formule atomiche possono essere di due tipi:
    1. dove è uno schema di relazione e sono variabili
    2. oppure con variabili, costante e operatore di confronto
  • è un attributo
  • è una variabile libera
  • è chiamata target list e descrive il risultato
    Il risultato è una relazione sugli attributi che contiene tuple di valori per le variabili libere che rendono vera la formula rispetto ad una istanza di base di dati a cui l’espressione è applicata.