This version of the course guide is provisional until the period for editing the new course guides ends.

Logo UAB

Relational Databases

Code: 104394 ECTS Credits: 6
2025/2026
Degree Type Year
Computational Mathematics and Data Analytics OB 2

Contact

Name:
Carlos Alejandro Parraga
Email:
carlosalejandro.parraga@uab.cat

Teaching groups languages

You can view this information at the end of this document.


Prerequisites

It is recommended that the student has knowledge and skills of:

  • Structured programming
  • Basic data structures.

These concepts correspond to content of the subjects:

  • Introduction to programming

Objectives and Contextualisation

In this course we will introduce basic concepts of relational databases (DB), which are necessary both for users and designers.

Knowledge:

At the end of the course the student will be capable of:

  • Knowing and understanding the important technological jump represented by database systems regarding the treatment of information as well as the design and maintenance of data manipulation applications.
  • Knowing and understanding the architecture of database systems, the functions of each module and those of the personnel involved in its creation and day-to-day running (users, programmers, administrators, etc.)
  • Comprehending the design methodology of a database
  • Understanding the entity-relationship model (E-R model)
  • Knowing and understanding the properties of the relational model, as implemented in most database engines.
  • Knowing and understanding the SQL language, the relational database standard language

Abilities:

At the end of the course the student will develop the following abilities:

  • Ability to design the E-R model of a database from a series of real-world specifications
  • Ability to convert the E-R model into the set of attributes and relationships that compose a real relational database
  • Ability to use the integrity rules of the relational model to be able to fill the database with data and guarantee its consistency and general robustness.
  • Ability to make simple and relatively complex queries to the database using SQL language.
  • Ability to work with a typical DB engine such as Oracle (whose use is very extended in the professional world)

Learning Outcomes

  1. CM17 (Competence) Design relational or non-relational databases relevant to the characteristics of the data to be represented, processed and stored with ethical and environmental responsibility.
  2. CM18 (Competence) Correctly measure the infrastructure of the database required for the management and mass storage of data in a specific service.
  3. KM15 (Knowledge) Perform queries on a database to efficiently extract the relevant information to analyse the required data.
  4. SM16 (Skill) Handle a database efficiently.
  5. SM17 (Skill) Extract important information from a database efficiently.

Content

 Introduction and basic concepts

  • Introduction and definitions
  • Components of a database system.
  • Historical evolution.
  • Advantages and disadvantages of a database system.

2. Architecture

  • ANSI-SPARC architecture
  • DBA and SGBD
  • Back-end/front-end architecture

3. Design. The entity-relationship model

  • Design of a database
  • Entity-relationship model
  • Extended entity-relationship model
  • The design criteria of an E-R schema
  • E-R schematic design

4. The relational model of databases

  • Introduction
  • Database structure
  • Integrity rules
  • Database manipulation: relational algebra and SQL queries

5. The design of a database

  • Design stages of a database
  • Requirements’ capture and analysis
  • Conceptual design of a database
  • Logical design
  • Physical design
  • Normalization

6. Internal level

  • Physical database access
  • Storage structures: Indexing, Hashing (dispersion)
  • Compression techniques

Activities and Methodology

Title Hours ECTS Learning Outcomes
Type: Directed      
Practical Sessions 10 0.4 KM15, SM16, KM15
Theory and Problems Sessions 36 1.44 CM17, CM18, SM17, CM17
Type: Supervised      
Tutorials 15 0.6 CM17, CM18, KM15, SM16, SM17, CM17
Type: Autonomous      
Database creation and writing of its corresponding technical report 25 1 CM17, CM18, KM15, SM16, SM17, CM17
Exercise preparation and theoretical quizzes resolution 15 0.6 CM17, CM18, SM16, SM17, CM17
Practical sessions' preparation 5 0.2 CM17, CM18, KM15, SM16, SM17, CM17
Study 36 1.44 CM17, CM18, KM15, SM16, SM17, CM17

Learning Process

The learning process will be based on three types of activities: theory and problem-solving classes, practical sessions, and the writing of a technical report on a database. All documentation and materials needed to follow the course will be available through the Caronte platform (http://caronte.uab.cat).

 

GUIDED LEARNING ACTIVITIES

Theory and Problem-Solving:
Theory sessions are delivered through lectures supported by documentation and presentations. Theoretical concepts necessary to solve the problems presented throughout the course will be introduced. During problem-solving hours, exercises will be proposed to be solved in class, and independent work will be encouraged so that each participant can complete the remaining exercises, with access to the database and solutions.

Problem-solving sessions are structured into two blocks:

  • (a) Design of relational databases.
  • (b) Querying a database.

In the first block, participants will practice designing using the E/R model based on specific requirements.
In the second block, the SQL language (Structured Query Language) will be introduced, with supporting materials, and queries will be performed using relational algebra and SQL on a sample database with specific content.

Practical Sessions:
The aim of the practical sessions is to introduce participants to SQL, the standard language for querying databases. Each session will consist of a series of exercises on a database, helping to reinforce theoretical concepts and become familiar with the design, creation, and manipulation of relational databases, both as users and developers.

Participants are expected to prepare the practical work in advance, based on the provided instructions. The work will be completed during the supervised sessions.

Instructions, submission guidelines, and evaluationcriteria for the practicals can be found in the corresponding documents on Cerbero.

 

AUTONOMOUS LEARNING ACTIVITIES

Technical Report on Database Creation:
In parallel with theory, problem-solving, and practical sessions, each participant will take part in the creation of a database. This project will result in a technical report and the necessary scripts for creating and validating the database. The work will be carried out in groups of 4 or 5 and will be mostly autonomous, under the supervision of the teaching staff during scheduled tutorials.

Self-Managed SQL Practice:
Participants will also engage in self-managed SQL problem-solving activities. These will be completed individually, at times chosen by each person within the limits set by the course schedule.

Instructions, submission guidelines, and evaluation criteria for these activities are available on the Caronte platform.

 

SUPERVISED LEARNING ACTIVITIES

Tutorials:
Tutorials aim to resolve doubts and consolidate the knowledge acquired during the week. They may be individual or in groups, depending on the topic. Tutorial schedules will be set at the beginning of the course. Participants should notify the instructor in advance (preferably by email) before attending.

All necessary materials (instructions, database scripts, problem results) will be available on the Caronte platform (http://caronte.uab.cat).

 

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.


Assessment

Continous Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Autonomous SQL Query Resolution 10 2 0.08 KM15
Practical Assessment 20 2 0.08 KM15
Technical Report 20 0.5 0.02 CM17, CM18, KM15, SM16, SM17
1st Partial Exam 20 1.5 0.06 CM17, CM18, SM17
2nd Partial Exam 30 2 0.08 CM17, KM15, SM16, SM17

EVALUATION CRITERIA

The course evaluation consists of five parts: Partial Evaluation 1, Partial Evaluation 2, a technical report, practical assessment, and independent resolution of SQL queries.

  1. THEORY AND PROBLEM ASSESSMENTS (Nota_Parcial1 and Nota_Parcial2). Two individual written tests will be conducted, contributing 20% and 30% respectively to the final grade.

    • First test (Nota_Parcial1): Mid-semester, assessing basic concepts and skills for database design (E-R model).
    • Second test (Nota_Parcial2): End of semester, covering all course content, with emphasis on topics not included in the first test.

  2. PRACTICAL ASSESSMENT (Nota_Pract)Worth 20%, this will be conducted through an SQL query test during the final practical session. Students can view their grade after the test. The format will be similar to the autonomous learning module.

  3. INDIVIDUAL WRITTEN TESTS (Nota_PEI). The three previous grades are combined to calculate the score for individual written tests:

    Nota_PEI = (0.2 * Nota_Parcial1 + 0.3 * Nota_Parcial2 + 0.2 * Nota_Pract) / 0.7

  4. AUTONOMOUS WORK (Nota_InfTec and Nota_AutoAval)

    • Technical Report (Nota_InfTec): Worth 20%, includes four phases of DB design (requirements, ER diagram, logical table model, and implementation/testing). Must be submitted in the required format and be legible. If any diagram is unreadable, that part will be failed. Submitted in two phases: mid-semester and end of semester. Final grade:

      Nota_IT_ = màx [(nota1 + nota2) / 2; 0,7 * nota2].

    • Independent SQL Query Resolution (Nota_AutoAval): Worth 10%, done outside class hours via an online module. Grade depends on the number and difficulty of queries solved.

FINAL GRADE (Nota_Final). The final grade is the weighted mean of all grades.

Nota_Final =  0,2 * Nota_Parcial1 + 0,3 * Nota_Parcial2 + 0,2 * Nota_Pract + 0,2 * Nota_InfTec + 0,1 * Nota_AutoAval

To calculate this final grade, each component must be greater than zero, and the average score of the written tests (Nota_PEI) must be ≥ 4.5.

To pass the course, the final grade (Nota_Final) must be ≥ 5. Students who do not complete any evaluation activity will be marked as “not assessable.”

 

RE-EVALUATION CRITERIA

Students who did not pass may be eligible for re-evaluation if:

  • (A) They meet the conditions to calculate the final grade, with a total score between 3.5 and 5, and Nota_PEI ≥ 4.5.
  • (B) They scored below 4.5 in Nota_PEI, but the weighted final grade would be ≥ 5.

The re-evaluation test (Nota_reeval), written and held in the final week, covers the entire course. The new final grade is the average of Nota_reeval and Nota_PEI. If this average is ≥ 5, the student passes.

The re-evaluation date is set in the Faculty’s exam calendar.

To participate in re-evaluation, students must have completed at least two-thirds of the total course assessments.

If not eligible, the final grade will be the lower of Nota_PEI or 4.5.

SINGLE ASSESSMENT MODALITY

Students opting for single evaluation will take a test with three parts:

  • (A) Theoretical questions on the entire syllabus.
  • (B) Design problems (all phases and normalization), relational algebra queries, and questions on the technical report.
  • (C) SQL queries on a computer.

Final grade weighting:

  • Part A: 40%
  • Part B: 40%
  • Part C: 20%

If the final grade is below 5, a recovery exam (Parts A and B only) may be taken. Part C is not recoverable. If the recovery grade is ≥ 5, the final grade will be 5 (pass).

OTHER IMPORTANT INFORMATION

  • CARONTE REGISTRATION: Mandatory at the start of the course via http://caronte.uab.cat. This platform hosts course materials, practice submissions, and final grades. Students must upload personal data and a passport-style photo (JPG). This data is confidential and deleted after the course ends.
  • REPEATING STUDENTS: No special treatment is given.
  • HONORS: Students with a final grade above 9 may receive an honors distinction (MH), limited to 5% of enrolled students. If more than 5% qualify, MH is awarded to the highest scorers.
  • PLAGIARISM: Any dishonest behavior (copying, plagiarism, cheating, allowing others to copy etc.) will result in a zero for the activity, which cannot be recovered. If the activity is essential to pass the course, the student will fail the course outright. In the case of the technical report, all involved groups will receive a zero, regardless of authorship.
  • AI USAGE: The use of AI technologies is strictly prohibited in all phases of the course. Any work containing AI-generated content will be penalized and may result in a zero or more severe sanctions. 

Evaluation Calendar

Dates for assessments (exams, exercises, submissions, etc.) will be announced in advance during the semester. The final exam date is set in the Faculty’s exam calendar.

Assessment dates cannot be changed unless there is a justified exceptional reason. In such cases, a new date will be proposed in consultation with faculty and affected students.

Grade Review Procedure

The date and method for publishing final grades will be announced with the final exam. Information on how to request a review, including time and place, will also be provided according to university regulations.

Irregularities in evaluation activities

In spite of other disciplinary measures deemed appropriate, and in accordance with current academic regulations, "in the case that the student makes any irregularity that could lead to a significant variation in the grade of an evaluation activity, it will be graded with a 0, regardless of the disciplinary process that can be instructed. In case of various irregularities occur in the evaluation of the same subject, the final grade of this subject will be 0". Section 10 of Article 116. Results of the evaluation. (UAB Academic Regulations).


Bibliography

Basic Bibliography

  • A. Silberschatz, H.F. Korth, S. Sudarshan, Fundamentos de Bases de Datos, 5a edición, McGraw-Hill, 2006. Permanent link
  • A. Silberschatz, H.F. Korth & S. Sudarshan, Database system concepts (7th ed., International ed. ed.). New York, N.Y.: McGraw-Hill, 2018. Permanent link
  • C.J. Date, Introducción a los sistemas de Bases de Datos, Vol.1, 7a edición, Prentice Hall, 2001. Permanent link
  • C.J. Date, An introduction to database systems (8th ed.). Boston, Mass.; London: Pearson/Addison-Wesley, 2004. Permanent link

Complementary Bibliography

  • A. Fowler, NOSQL for Dummies, For Dummies; 1 edition, 2015. Permanent link
  • Gaurav Vaish, Getting Started with NoSQL, Packt Publishing, 2013. Permanent link
  • C.A. Coronel & S.A. Morris, Database systems: design, implementation, and management (13 ed.): Course Technology, 2018. Permanent link
  • T.M. Connolly & C.E. Begg, Database systems: a practical approach to design, implementation, and management (6th ed. ed.). Boston, MA: Pearson Education, 2014. Permanent link
  • P. Rob, C. Coronel, Sistemas de Bases de datos. Diseño, implementación y administración, Thomson-Paraninfo, 2004. Permanent link
  • M. Celma, J.C. Casamayor, L. Mota, Bases de Datos Relacionales, Pearson-Prentice Hall, 2003. Permanent link
  • D.M. Kroenke, Procesamiento de Bases de Datos, 8ª edición, Pearson-Prentice Hall, 2003. Permanent link
  • A. de Miguel, M. Piattini, Diseño y uso de Bases de Datos Relacionales, Ra-Ma, 1997.
  • G.W. Hansen, J.V. Hansen, Diseño y administración de Bases de Datos, 2a edición, Prentice Hall, 1997. Permanent link
  • C.J. Date, H. Darwen, A Guide to the SQL standard, 3rd edition, Addison-Wesley, 1994.

Web links

 


Software


Groups and Languages

Please note that this information is provisional until 30 November 2025. You can check it through this link. To consult the language you will need to enter the CODE of the subject.

Name Group Language Semester Turn
(PLAB) Practical laboratories 1 Catalan/Spanish first semester morning-mixed
(TE) Theory 1 Catalan/Spanish first semester morning-mixed