Appunti vari esercizi
- in datalog non posso mettere piú confronti nell stessa formula. Devo fare un specie di ‘overriding’.
- in datalog, sql e calcolo relazionale posso usare il simbolo per indicare il diverso.
- in sql devo parlare dei riferimenti scrivendo REFERENCES .. CASCADE / NO ACTION / SET NULL e devo specificare le azioni che bisogna attuare in caso di ON DELETE o ON UPDATE
- VARCHAR in caso di una stringa a lunghezza variabile. Ad esempio il codice fiscale sará sempre CHAR(16)
- PRIMARY KEY
- FOREIGN KEY tutte le volte che c’é un vincolo d’integritá referenziale che coinvolge piú di un attributo.
- tab1 JOIN tab2 ON tab1.x = tab2.y
l’approccio é sempre quello.. davanti ad un problema insormontabile spezzetta il problema e ragiona con query piú semplici. Esse poi diventeranno le sotto-query.
-
spesso il ragionamento chiave é pensare ad esempio ‘i clienti che hanno sempre prenotato in ristoranti diversi sono i clienti le cui prenotazioni nello stesso ristorante non hanno mai date e orari diversi’.
-
da concettuale a logico posso scegliere come ‘implementare’ certi schemi. Ad esempio in caso di generalizzazioni posso implementare un attributo ‘selettore’.
Domande di teoria esami recenti:
-
Si considerino gli attributi multi-valore del modello concettuale (ER), e si spieghi in quali modi si possono tradurre nel modello relazionale e sotto quali condizioni.
-
Spiegare per quale motivo il Datalog con negazione è più espressivo dell’Algebra Relazionale.
-
Spiegare la relazione tra cardinalità minima di una relazione nel modello ER e vincolo “NOT NULL” nel modello relazionale.
-
Dire in quale forma normale sono le relazioni definite nella Parte 1 del compito, e spiegare perché.
-
Descrivere brevemente le proprietà ACID garantite da un DBMS.
-
Confrontare molto brevemente dal punto di vista del potere espressivo l’algebra relazionale con l’SQL.
-
Spiegare brevemente i concetti di Modello,Schema e Istanza per le basi di dati, prendendo a esempio quelle relazionali
-
Spiegare la differenza tra modello, schema e istanza nelle basi di dati relazionali.
-
Definire il concetto di vincolo di integrità, descrivendone le categorie principali e fornendone esempi.
-
Definire il concetto di transazione e le proprietà ACID; discutere in particolare il significato della proprietà di CONSISTENZA e come il DBMS permette di assicurarla.
-
Discutere il concetto di informazione incompleta nella basi di dati relazionali, quali significati può assumere la mancanza di un valore, e quale soluzione viene adottata nei sistemi commerciali.
-
Illustrare le funzioni di un DBMS.
-
Descrivere le caratteristiche di un sistema di gestione di basi di dati che supporti le transazioni.