- Basi di Dati
- Introduzione
Syllabus del corso
Obiettivi
Alla fine del corso lo studente dovrebbe essere capace di modellare, progettare e realizzare una semplice applicazione base dati nel modello relazionale ed esprimere interrogazioni complesse su di essa.
Contenuti sintetici
Le basi di dati sono la tercnologia fondamentale nei moderni sistemi informativi e nel business. L'insegnamento ha lo scopo di introdurre lo studente ai concetti base delle basi di dati, ed in particolare modelli logici e concettuali di basi di dati, linguaggi di interrogazione, metodologie di progettazione logica e concettuale, qualità degli schemi, e il linguaggio SQL "embedded" nei linguaggi di programmazione.
Programma esteso
1. Introduzione. Concetti generali. Concetto di informazione e dato. Introduzione a basi di dati e DBMS, modello dei dati, concetto di schema e istanza. Indipendenza logica e fisica dei dati e tipologia di linguaggi per basi di dati. | |||
2. Il modello relazionale: relazioni e tabelle, schemi ed istanze, informazione incompleta e valori nulli, chiavi, vincoli di integrità. | |||
3. Linguaggi di interrogazione. Algebra Relazionale, Select, Project, Natural Join, Prodotto Cartesiano, Theta-Join | |||
4. SQL. Definizione dei dati in SQL. Definizione di interrogazioni in SQL: interrogazioni semplici, con operatori insiemistici, nidificate e con raggruppamento. Operazioni di inserimento, modifica e cancellazione. Definizione di viste. | |||
5. Il modello Entità-Relazione (E-R) esteso con generalizzazioni. Metodologie di progettazione di basi di dati. La progettazione concettuale. | |||
6. La progettazione logica. Ristrutturazione e ottimizzazione di schemi E-R: eliminazione delle gerarchie, degli attributi composti e multivalore. Traduzione da schemi E-R a schemi relazionali | |||
Prerequisiti
Insiemistica, elementi introduttivi di calcolo delle proposizioni, come insegnati nelle scuole superiori
Modalità didattica
Il corso è costituito da lezioni frontali, esercitazioni in aula, e da un'attività di laboratorio.
Materiale didattico
P.Atzeni Ceri, Paraboschi, Torlone, Basi di Dati – Modelli e linguaggi di interrogazione – terza edizione, McGraw-Hill, 2009
D. Braga, M. Brambilla, A. Campi - Eserciziario di Basi di Dati Progetto Leonardo Bologna.
L. Cabibbo, R. Torlone, C. Batini - Basi di dati, Progetti ed esercizi svolti, Pitagora Editrice Bologna.
slide e materiale on-line fornito dai docenti
Il corso propone agli studenti le slide commentaste a voce accessibili da
http://elearning.unimib.it/course/view.php?id=14058
password: ospite2017!
le video lezioni su Data base modleing and Deisgn accessibili sul sito
http://elearning.unimib.it/course/view.php?id=17573
e la trascrizione delle video lezioni accessibili da
http://hdl.handle.net/10281/97114
Periodo di erogazione dell'insegnamento
secondo semestre
Modalità di verifica del profitto e valutazione
Scritto con domande aperte sul tutte le principali tematiche inerenti al corso: modello ER, progettazione concettuale, modello relazione, algebra relazionale, SQL, progettazione logica. Sono previsti due esoneri da sostenere in corso d'anno.
- Prima prova (esonero).
- Modello Entita’ Relazione e progettazione concettuale
- Modello relazionale
Seconda prova (esenero)
- Linguaggio SQL
- Algebra relazionale
- Progettazione logica
- Il voto minimo delle singole parti deve essere almeno 15/30. il voto finale e’ la media dei voti delle due parti (esoneri). L’esame e’ superato se la media e’ uguale o superiore a 18/30. Se il voto dell’esame e’ positivo (maggiore uguale a 18),
- al voto si somma algebricamente il punteggio ottenuto con la prova facoltativa di laboratorio (max 3 punti).
Orario di ricevimento
di seguito alle lezioni frontali e su appuntamento (R Schettini)
lunedi dalle 12 alle 13 su appuntamento
Aims
At the end of the course the student should be able to model, design and implement a simple database application in the relational model and express complex queries .
Contents
To introduce basic concepts in the data base topics. Data bases are considered the "bedrock" of modern business, and are the core technology in practically every application of ICT. The skills provided by the course concern three different areas:
Models for databases, both at the conceptual level (the Entitiy Relationship model) and at the Data Base Management System logical level (Relational model).
Languages for querying and updating a data base, specifically, SQL and Query by Example.
Methodologies for data base design, both the conceptual phase and the logical phase.
Detailed program
1., Introduction to data bases and Data Base Management Systems. The
data base as an organizational and technological issue. |
|||
2,. Relational Model, Relations, Attributes, Domains, Integrity constraints, Keys, referential integrity. | |||
3. Relational Algebra, Select, Project, Natural Join, Cartesian Product, Theta-Join | |||
4. SQL, Data Description Language and Data Manipulation Language,
syntax and semantics of commands. |
|||
5. Entity Relationship model, Entities, Relationships, Attributes,
IS-A relations, Generalizations, Cardinalities, Identifiers. Conceptual
Database Design, Qualities of a Conceptual Schema, Requirements collection
and Analysis, Design Strategies. |
|||
6. Logical Database Design, Transformation Phase and Translation Phase, schema optimization. | |||
Prerequisites
Set theory and propositional calculus, as taught in high schools.
Teaching form
The course consists of lectures, classroom exercises, and practical activities.
Textbook and teaching resource
P.Atzeni Ceri, Paraboschi, Torlone, Basi di Dati – Modelli e linguaggi di interrogazione – terza edizione, McGraw-Hill, 2009
D. Braga, M. Brambilla, A. Campi - Eserciziario di Basi di Dati Progetto Leonardo Bologna.
L. Cabibbo, R. Torlone, C. Batini - Basi di dati, Progetti ed esercizi svolti, Pitagora Editrice Bologna.
slides and other materials provided by professors.
The course for students A-L makes accessible the voice commented Power point slides at
http://elearning.unimib.it/course/view.php?id=14058
password: ospite2017!
the video lessons on Data base modleing and Deisgn accessible at
http://elearning.unimib.it/course/view.php?id=17573
and the trasncriptions of video lessons in the textbook downloadable at
http://hdl.handle.net/10281/97114
Semester
second semester
Assessment method
Written exam with open questions on all the main topics related to the course: ER model, conceptual design, reletional model, relational algebra, SQL, logical DB design. There are two exemptions to be supported during the year.
Office hours
following the class lessons and by appointment (R Schettini)
monday 12-13 by appointment (C. Batini)
Scheda del corso
Staff
-
Chiara Damiani
-
Simone Melzi
-
Paolo Napoletano
-
Flavio Piccoli
-
Alessandro Raganato
-
Raimondo Schettini