DATABASE M - Z

Academic Year 2025/2026 - Teacher: GIOVANNI MICALE

Expected Learning Outcomes

The course aims to give the knowledge and basic skills for the representation, organization, and querying of databases. The course mainly refers to the relational data model which is widely adopted in commercial and open-source systems. The course thoroughly introduces the 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), the basis of NoSQL data. MySQL in connection to the host language PHP. As NoSQL  MongoDB and CouchDB systems will be tested.

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 the representation, organization, query of databases.

2. Applying knowledge and understanding: the student will acquire the skills needed to design conceptually and logically a database. You will be able to implement a relational database using SQL language and interface with suitable host languages. Acquire as well as 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 MySQL, CouchDB, MongoDB and the PHP language, JavaScript and Ajax.

3. Making judgments: Through concrete examples and case studies, the student will be able to independently develop solutions to specific problems related to databases.

4. Communication skills: the student will acquire the necessary communication skills and expressive appropriateness in the use of 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, different topics will be covered in class by involving students in the search for possible solutions to real problems such as query optimization.

Course Structure

Frontal 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.

Learning assessment may also be carried out on line, should the conditions require it.

Required Prerequisites

Year: Second (First semester)

Scientific sector: INF/01

CFU: 9

Hours: 72

Propedeutic course: Programming 2

Attendance of Lessons

Attendance is mandatory.

Frontal lectures are the main resource that will be available to the student.

To help follow lectures, slides of the course will be provided to the students. Slides are not a mean for studying: they provide further details about the topics covered during the lectures. 

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.
  • Basics 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
1Relational modelChapter 2, Atzeni et al. and integrative material
2Relational algebraChapter 3, Atzeni et al. and integrative material
3SQL: QueriesChapter 4 (paragraph 4.3), Atzeni et al. and Chapter 6, Albano et al. and integrative material
4SQL: Data definitionChapter 4 (paragraph 4.2), Atzeni et al. and integrative material
5SQL: Data modificationChapter 4 (paragraph 4.4), Atzeni et al. and integrative material
6View and stored procedureChapter 5, Atzeni et al. and integrative material
7TriggerChapter 5, Atzeni et al. and integrative material
8Design of a databaseChapter 6, Atzeni et al. and integrative material
9Conceptual designChapter 7, Atzeni et al. and integrative material
10Logic designChapter 8, Atzeni et al. and integrative material
11NormalizationChapter 5, Albano et al. and integrative material
12Development of applications and host languageshttp://www.w3schools.com and integrative material
13Physical organization and query managementChapter 11, Atzeni et al. and integrative material
14Transactions, reliability and concurrence checkChapter 12, Atzeni et al. and integrative material
15XML, XML schema, Xquery, XpathChapter 14, Atzeni et al. and integrative material
16Mentions about NoSQL databaseIntegrative material

Learning Assessment

Learning Assessment Procedures

Evaluation of acquired knowledge is done through a written exam followed by an oral interview in which the student discusses a project. The grade is expressed in thirtieths up to 30/30 and honors.

The written exam consists of 8-10 exercises about the topics covered during lectures. The written exam lasts 1.5 hours. The written exam is followed by an oral interview in which a project is discussed by the student. The project is assigned by the professor after the end of the course.

The test allows to verify: i) the level of knowledge of the discipline; ii) the ability to apply this knowledge to the resolution of specific problems inherent to databases (problem-solving to the autonomy of judgment); iii) clarity of exposition; and iv) property of scientific language. Verification of learning may also be conducted electronically, should conditions require it.

The following parameters will be taken into account in awarding the final grade:

  • Grade 29-30 cum laude: the student has a thorough knowledge of the topics covered, readily and correctly succeeds in integrating and critically analyzing the situations presented, independently solving even highly complex problems, has excellent communication skills, and masters the scientific language.
  • Grade 26-28: The student has a good knowledge of the topics covered, manages to integrate and analyze critically and linearly the situations presented, works to solve complex problems independently enough, and expounds the issues using appropriate scientific language; 
  • Grade 22-25: the student has a fair knowledge of the topics covered, although limited to the main issues; succeeds in integrating and analyzing critically but not always linearly the situations presented, and expounds the problems quite clearly with a fair command of language; 
  • Grade 18-21: the student has minimal knowledge of the topics covered, has a modest ability to integrate and critically analyze the situations presented, and expounds the arguments sufficiently clearly, although language property is poorly developed; 
  • Exam not passed: the student does not possess the required minimum knowledge of the main contents of the teaching. In addition, there is little or no ability to use specific language, and he cannot apply the knowledge acquired independently.

Who does not pass the written exam, cannot do the oral interview. The written exam can be reviewed before the oral interview.

Except for different communications:

  • written exam starts at 9 am.

Notes:

  • Usage of hardware instruments (calculators, tablets, smartphones, mobile phones, BT headsets, etc...), books or any personal documents is forbidden during the (written) exams.
  • To attend the exams, booking using the relative module of CEA portal is mandatory.
  • Late booking by email are forbidden. Without booking, the exam cannot be verbalized.

Should be required, learning evaluation of the course can be also done remotely.

Students with disabilities and/or DSA should contact the professor and the DMI's CInAP contact person refesufficiently in advance with respect to the date of the exam, in order to communicate that they want to attend the exam, benefiting from the relative compensative measures.

Examples of frequently asked questions and / or exercises

Exams of past years will be published on Studium, together with the solutions and examples of questions and/or exercises.
VERSIONE IN ITALIANO