The learning outcomes of this teaching activity, expressed in terms of the Dublin Descriptors, are the following:
Knowledge and understanding
This course will provide students with the knowledge and understanding of the relational data model. In particular, the techniques and methodologies to design, build, query and manage a relational database are described, using the SQL language. In addition to the relational model, the course also presents the basics of the data models falling within the so-called NoSQL family.
Applying knowledge and understanding
For each topic of the course, a number of examples and practical exercises will be presented in class, so that the students gain the basic skills both for designing a database, and for understanding an existing model written in the SQL language. Part of the exercises will be carried out using software packages employed in professional contexts.
Making judgements
Students will be able to evaluate the different alternatives when designing and querying a database. The basic knowledge of the models falling in the NoSQL paradigm will allow the student to assess in which cases one of these models can be preferred to the relational model.
Communication skills
The design of the conceptual model of a database for a given application requires the capability of translating the requirements expressed by the user in natural language, into the formalism of the relational model. The students will learn the basic communication capabilities needed to interact with non-technical users in order to clearly define the application requirements.
Learning skills
The student will learn the basic principles behind the design and use of relational and non-relational models, providing them with the essential tools for extending their knowledge on more advanced technical aspects and on different database management system implementations.
Lectures and hands-on exercises.
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.
Fundamentals of Database Management Systems (DBMS)
Relational Model: basic concepts, integrity constraints and keys.
SQL language: data definition, data modification, queries, views, transactions.
NO-SQL database: MongoDB
R. Elmasri and S. Navathe, "Fundamentals of Database Systems", 7th Edition, Pearson, 2016.
Instructor’s notes
Subjects | Text References | |
---|---|---|
1 | Relational model (part 1) | |
2 | Relational model (part 2) | |
3 | Relational algebra (part 1) | |
4 | Relational algebra (part 2) | |
5 | Relational algebra exercises | |
6 | SQL basic concepts (part 1) | |
7 | SQL basic concepts (part 2) | |
8 | SQL exercises | |
9 | SQL aggregate operators | |
10 | SQL transactions and views | |
11 | NoSQL (part 1) | |
12 | NoSQL (part 2) | |
13 | NoSQL exercises |