““Teoria e Pratica dei Database Relazionali, con SQL”, un corso pensato come una miscela di teoria e di pratica per consentirti di imparare, in un tempo ragionevole, ad utilizzare un database relazionale attraverso il linguaggio SQL. Lo scopo del corso acquisire tutte le competenze di base necessarie per utilizzare un database relazionale, in settori quali la data science, il web development, gli embedded systems ed il cloud computing. Il corso diviso in tre livelli principali, ciascuno dei quali traccia un percorso ideale dalla teoria del modello relazionale dei dati fino alla pratica dei DBMS e del linguaggio SQL. Il primo livello del corso rivolto ad acquisire la conoscenza del modello concettuale che sta alla base di tutti i database relazionali. In questa prima fase, andremo quindi conoscere il Modello Relazionale dei Dati, ed introdurremo i concetti di relazione, di attributo, di data type, di tupla, di normalizzazione, e di chiave, secondo il modello teorico di Edgar Codd, che forma la base teorica indispensabile per la comprensione dei database relazionali. Nel secondo livello del corso, passeremo invece al modello logico di organizzazione e di rappresentazione dei dati, cio un modello di descrizione meno astratto rispetto al precedente, che fondamentale nella fase di analisi e di progettazione dei database relazionali. In questa seconda fase andremo a conoscere il Modello Entit-Relazione, che ci consente anche di rappresentare graficamente il livello logico di un database. Impareremo i concetti di entit, di relazione, di cardinalit e di modalit. Impareremo anche conoscere e ad utilizzare le relazioni uno-ad-uno, uno-a-molti, e molti-a-molti, e altri elementi fondamentali per la definizione di un modello logico dei dati, come le entit attributive e le entit associative. Nel terzo livello del corso passeremo al modello fisico di un database relazionale, ed andremo ad utilizzare un vero schema di database per eseguire tutte le attivit pratiche necessarie per la conoscenza e e la pratica nell’utilizzo di un vero database relazionale. In questa terza fase, attraverso le lezioni di varie sezioni del corso, impareremo il linguaggio standard SQL, applicandolo ad un caso concreto sul quale applicheremo la teoria, e sperimenteremo la pratica. Relativamente al linguaggio SQL, studieremo in particolare: Data Definition LanguageData Manipulation LanguageData Query LanguageTransaction Control LanguageCome sistema per la gestione dei database, durante il corso utilizzeremo SQLite, la pi famosa libreria per la gestione di database relazionali, disponibile per molti linguaggi di programmazione. Utilizzeremo anche SQLite Studio, un programma gratuito per accedere in modo interattivo ai database SQLite.