An open API service indexing awesome lists of open source software.

https://github.com/umbertocicciaa/databases-notes

Notes from the database course of the University of Calabria 2023-2024
https://github.com/umbertocicciaa/databases-notes

databases lectures notes

Last synced: over 1 year ago
JSON representation

Notes from the database course of the University of Calabria 2023-2024

Awesome Lists containing this project

README

          

# Databases-Notes
Notes from the database course of the University of Calabria 2023-2024

# Programma trattato

Introduzione: Sistemi informativi, informazioni e dati. Basi di dati e sistemi di gestione di basi di dati. Modelli dei dati. Linguaggi e utenti delle basi di dati. Vantaggi e svantaggi dei DBMS.

Metodologie e modelli per il progetto: Il ciclo di vita dei sistemi informativi. Metodologie di progettazione e basi di dati. Il modello Entità-Relazione: Entità, Relazioni, Cardinalità, Attributi, Gerarchie. Documentazione di schemi E-R.

Il modello relazionale: Modello logico. Schema, istanza di una base di dati. Relazioni e tabelle, attributi. Informazione incompleta e valori nulli. Chiave, Superchiave. Vincoli di integrità (di dominio, di tupla). Vincoli di integrità' referenziale.

La progettazione logica: Ristrutturazione di schemi E-R. Analisi delle ridondanze. Eliminazione delle gerarchie. Partizionamento/accorpamento di concetti. Scelta degli identificatori principali. Traduzione verso il modello relazionale. Documentazione di schemi logici. Esempi di progettazione logica.

Algebra relazionale: Operatori insiemistici: Unione, intersezione, differenza, prodotto. Ridenominazione. Selezione. Proiezione. Join. Interrogazioni in algebra relazionale. Equivalenza di espressioni algebriche. Algebra con valori nulli. Viste. Calcolo relazionale su attributi e su tuple.

SQL: Definizione dei dati in SQL (DDL). I domini elementari. Definizione di schema. Definizione delle tabelle. Definizione dei domini. Specifica di valori di default. Vincoli intrarelazionali. Vincoli interrelazionali. Modifica degli schemi. Interrogazioni in SQL. Interrogazioni semplici. Operatori aggregati. Interrogazioni con raggruppamento. Interrogazioni nidificate. Manipolazione dei dati in SQL. Inserimento. Cancellazione. Modifica. Vincoli di integrità generici. Asserzioni. Viste. Cenni di Embedded SQL.

Indicizzazione: Concetto di indice. Tecniche di hash. Hash statico e dinamico. Hash virtuale, estendibile, lineare. Indici B-tree e varianti.

Gestione delle transazioni: Concetto di transazione: proprietà di atomicità, consistenza, isolamento, durabilità. Meccanismi per la gestione delle transazioni nelle basi di dati. Livelli di isolamento.