DATABASE M - Z

Academic Year 2023/2024 - Teacher: SALVATORE ALAIMO

Expected Learning Outcomes

The course aims to give the knowledge and basic skills for database representation, organization and querying. The course mainly refers to the relational data model widely adopted in commercial and open-source systems. The course thoroughly introduces relational algebra, the SQL query language, the Entity-Relation model, the normalization of databases: Boyce-Codd and 3NF, transactions and recovery of databases, XML (along with xpath and xquery), and the basis of NoSQL data. MySQL in connection to the host language PHP.

General teaching training objectives in terms of expected learning outcomes:

  1. Knowledge and understanding: The course aims to give the knowledge and basic skills for database representation, organization, and query.
  2. Applying knowledge and understanding: the student will acquire the skills needed to design conceptually and logically a database. You can implement a relational database using SQL and interface with suitable host languages. In addition, acquired concepts to achieve non-relational databases such as XML and NoSQL. In this respect, a part of the course will consist of practical lessons which will be presented in MySQL, CouchDB, MongoDB, the PHP language, JavaScript, and Ajax.
  3. Making judgments: Through concrete examples and case studies, the student can independently develop solutions to specific problems related to databases.
  4. Communication skills: the student will acquire the necessary communication skills and expressive appropriateness in using technical language in the general area of ​​databases.
  5. Learning skills: The course aims, as the goal, to provide students with the necessary theoretical and practical methods to deal independently and solve new problems that may arise during a work activity. For this purpose, we will cover several topics involving students searching for possible solutions to real issues, such as query optimization.

Course Structure

Lectures.

Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.

Required Prerequisites

Course year: Second - first semester

Scientific Disciplinary Area: INF/01

CFU: 9 hours: 72

Propaedeuticities: Programming 2

Attendance of Lessons

The main resources made available to the student are face-to-face lectures, whose attendance is strongly recommended.

To better follow the lectures, the slides used for the course are shared with the students. However, the slides do not constitute a means of study: they provide details on the topics covered in class.

Detailed Course Content

  • Introduction to databases: data models, general information about DBMS.
  • The data model: The relational model. Relationships, attributes, instances of relationship, tuples. Integrity constraints, the key concept. relational algebra: basic and derived operators.
  • The SQL (Structured Query Language). The data definition language: definition of tables, domains, indexes. Specification of simple integrity constraints. The query language: the join-selection-projection operators, aggregates operators, grouping operator. Nested queries and related, set operators. Recursive queries. The data manipulation language: insertion, deletion and modification of tuples. Definition of views, generic integrity constraints. Controlling access to a data base. Active databases.
  • Design of databases: Conceptual design; logic design; physical design
  • Normalization of data bases: Abnormalities. Functional dependencies. Decompositions of diagrams: which store records that preserve the functional dependencies. Normal forms: Boyce-Codd and 3NF.
  • Basis of XML data
  • Introduction to NoSQL database.
  • Systems: MySQL (php / javaScript / Ajax interfaces). CouchDB, MongoDB.

Textbook Information

Textbooks:

  • Atzeni,Ceri,Paraboschi, Fraternali, Torlone, Basi di Dati, McGraw-Hill.
  • Albano-Ghelli-Orsini, Fondamenti di basi di dati, Zanichelli.

Other suggested books:

  • Garcia-Molina, Ullman, Widow Database Systems: The Complete Book, Prentice Hall.

Course Planning

 SubjectsText References
1Modello RelazionaleCapitolo 2, Atzeni et al. e materiale didattico integrativo
2Algebra relazionaleCapitolo 3, Atzeni et al. e materiale didattico integrativo
3SQL: InterrogazioniCapitolo 4, (paragrafo 4.3) Atzeni et al. e Capitolo 6, Albano et al. e materiale didattico integrativo
4SQL: Definizione datiCapitolo 4, (paragrafo 4.2) Atzeni et al. e materiale didattico integrativo
5SQL: Modifica datiCapitolo 4, (paragrafo 4.4) Atzeni et al. e materiale didattico integrativo
6Viste e Stored ProcedureCapitolo 5, Atzeni et al. e materiale didattico integrativo
7TriggerCapitolo 5, Atzeni et al. e materiale didattico integrativo
8Progettazione di una base di datiCapitolo 6, Atzeni et al. e materiale didattico integrativo
9Progettazione concettualeCapitolo 7, Atzeni et al. e materiale didattico integrativo
10Progettazione logicaCapitolo 8, Atzeni et al. e materiale didattico integrativo
11NormalizzazioneCapitolo 5, Albano et al e materiale didattico integrativo
12Sviluppo Applicazioni e linguaggi hosthttp://www.w3schools.com e materiale didattico integrativo
13Organizzazione fisica e gestione delle interrogazioniCapitolo 11, Atzeni et Al. e materiale didattico integrativo
14Transazioni, controllo affidabilità e controllo concorrenzaCapitolo 12, Atzeni et al e materiale didattico integrativo
15XML, XML schema, Xquery XpathCapitolo 14, Atzeni et al. e materiale didattico integrativo
16Cenni sui NoSQL databasemateriale didattico integrativo

Learning Assessment

Learning Assessment Procedures

The final examination consists of a written test and an oral interview in which a project is discussed.

The written test consists of exercises and theory questions.

Those who fail the written test cannot take the oral one. The written test may be viewed before the oral tests.

Unless otherwise announced, the written examination is held at 9:00 a.m.

Notes:

  • Using any hardware tools (calculators, tablets, smartphones, cell phones, BT headsets, etc.), books, or personal papers during the (written) exams is prohibited.
  • To take the exams, it is mandatory to make a reservation using the appropriate form on the student portal (therefore, in the absence of the prerequisites, it will not be possible to take the exam).
  • Late bookings via email are not allowed. In the absence of reservation, the exam cannot be verbalized.
  • Verification of learning may also be conducted electronically, should conditions require it.

Examples of frequently asked questions and / or exercises

Past years' exams with solutions, sample questions, and exercises will be posted on STUDIUM.