Data base

Base Knowledge

Students must master basic algorithmic concepts.

Teaching Methodologies

The following teaching methodologies are used in this curricular unit:

1. Expository method: explanatory method where theoretical foundations and concepts are presented by the teacher and discussed with the class. Concepts and information will be presented to students through, for example, slide presentations or oral discussions. It will be used in classes to structure and outline the information.

2. Demonstrative method: based on the example given by the teacher of a technical or practical operation that one wishes to be learned. It focuses on how a given operation is carried out, highlighting the most appropriate techniques, tools and equipment. It will be used, for example, in practical and laboratory classes.

3. Interrogative method: process based on verbal interactions, under the direction of the teacher, adopting the format of questions and answers. It allows for greater dynamics in the classroom and consolidates learning. It will be used, for example, to remember elements of previous classes and in revisions of the lectured content.

4. Active methods: pedagogical techniques will be used in which the student is the center of the learning process, being an active participant and involved in his own training. The teacher assumes the role of facilitator, stimulating critical thinking, collaboration, creativity and student autonomy. They will be applied in classes to achieve a dynamic and more lasting learning environment.

Each class will consist of two moments:

1. Introductory presentation and demonstration: At the beginning of the class, the teacher exposes and discusses the new contents under study with the students, demonstrating their applicability;

2. Practical application: After the introductory presentation, students develop work assignments, projects and problem solving, individually and in group, for practical application of new concepts, autonomously and under the guidance of the teacher.

Learning Results

At the end of the curricular unit the student will be able to:

1. Identify the basic concepts in relational databases: relational model, integrity, normalization and relational operations;

2. Use databases through SQL language (Standard Query Language);

3. Design a transactional project;

4. Design and implement databases using the Entity-Relationship model;

5. Plan, develop and manage database applications.

Program

1. Introduction to Databases and Basic Concepts (Data Models; Entities and Abstractions; Cardinality; Relational Data Model; Attributes; Primary Keys, Candidate Keys and Foreign Keys; Referential Integrity; Functional Dependence);

2. Relational operations and basic aspects of SQL (SQL Language; Relational Operations; Data Types; Integrity Constraints; Data Definition Language; Data Manipulation Language; Views; Security and Privileges; Schema definition and data manipulation using SQL);

3. Transactions and Concurrency Control (Transactions, Savepoints; Rollback Segments; Commits; Concurrency and Consistency; Blocking; Deadlocks);

4. Functional Dependence and Normalization (Database Design; 1st, 2nd and 3rd Normal Form (1FN, 2FN, 3FN), Boyce Codd Normal Form (FNBC); Functional Dependency Inference Rules);

5. Database Design (Entity-Relationship Diagrams; Degrees of Participation; Binary Relationships).

Curricular Unit Teachers

Marco António Morais Veloso

Grading Methods

Regarding the evaluation, the following methods are considered:

1. Periodic Evaluation:

       a) three individual practical assignments (TP);

       b) a final project (individual or group).

       Final Grade = TP1 (05/20) + TP2 (05/20) + TP3 (05/20) + Project (05/20)

2. Exam Evaluation (Normal Period, Resit Period, Special Period):

       a) an individual exam;

       b) a project, corresponding to the project developed during the academic semester.

       Final Grade = Exam (12/20) +  Project (08/20)

General Rules:

       a) each of the evaluation components has a minimum grade of 9,00 points [or 45% out of 100] in order for the student to obtain approval in the curricular unit.

       b) the completion of projects involves the submission of reports regarding curricular unit topics through the academic management platform (Inforestudante) and their respective presentation and defense.

       c) the project must be carried out exclusively during the academic semester, and it is not possible to develop the project them during the exam evaluation. Failure to obtain a minimum grade of 9,00 points [or 45% out of 100] in the project developed during the periodic evaluation will result in the student not being admitted to the Exam Evaluation, with the consequent failure of the curricular unit.

       d) access to the different evaluations depends on prior enrolment via the academic management platform.


    Internship(s)

    NAO

    Bibliography

    Belo, O. (2021). Bases de dados relacionais – Implementação com MySQL. FCA.

    Damas, L. (2021). SQL – Structured query language (14th ed.). FCA.

    Forta, B. (2012). SQL in 10 minutes (4th ed.). Sams Publishing.

    Garcia-Molina, H. (2014). Database systems: The complete book. Prentice Hall.

    Gouveia, F. (2021). Bases de dados – Fundamentos e aplicações (2nd ed.). FCA.

    Groff, J., Weinberg, P., & Wald, L. (2009). SQL: The complete reference (2nd ed.). McGraw-Hill. (Complementary Bibliography).

    MySQL. (2024). MySQL documentation – MySQL reference manual. https://dev.mysql.com/doc/

    Oracle. (2024). Oracle database documentation. https://docs.oracle.com/en/database/oracle/oracle-database/

    Ramakrishnan, R., & Gehrke, J. (2003). Database management systems. McGraw-Hill. (Complementary Bibliography).