Databases

Teaching Methodologies

Classes are theoretical-practical in computer rooms, and students can follow with their own laptops or with the computers in the room.
All the knowledge transmitted will be based on a strong practical component, where students will be invited to use a set of DBs software
development applications (SQL Server, DBSchema, ERDPlus, Radzen) to practice their knowledge.
Several practical activities will be proposed that will also allow the student to acquire the experience of designing a Database, from
theoretical specification to full operation using DBMSs.
As the development of practical work is monitored throughout the semester, it allows students to become familiar with the management of a
comic book project and to have the opportunity to clarify all doubts with the professors until the presentation of the final project, in addition
to creating elements to include in your portfolio of skills, essential for demonstrating your skills in the job market. This also allows
experiencing some challenges similar to those of real projects, which allows students to make the most appropriate decisions for the pursuit
of the project.

Learning Results

The objectives of the Databases (DB) subject are: to provide the student with the main concepts of DB to analyze, model, design and
conceive a DB Management System (DBMS). Student must be able to implement the entity-relationship model and adapt it to different
realities and constraints. Know how to structure a DB according to the relational model and perform relational algebra operations. Design
DB using the UML modelling language.
The student must:
– Understand the usefulness and evolution of BDs
– Know DBMS applications
– Understand the functioning of a DBMS
– Analyze, model, design and conceive DB
– Know and master the entity-relationship (E-R) model
– Master the structuring of a DB (relational model) and relational algebra
– Draw BD
– Mastering the SQL language
– Understand and master the concepts of integrity and referential integrity and DB security
– Know the concepts of concurrency, distribution and management of DB transactions
– Understand contexts of use of Data Warehouses

Program

Part I – DB
1. Introduction to Databases
1.1 Database Systems
1.2 Objectives and capabilities of the DBMS
2. Database Models
2.1. Introduction
2.2. Relational Model
3. Normalization Theory
3.1 Redundant data
3.2 Functional Dependencies
3.3 Standardization:
4. Entity-Association Diagrams
4.1 Introduction
4.2 Entity-Association Model
4.3 Properties of Associations
4.4 Decomposition of Associations
Part II – SQL
Module I – Introduction to SQL
Module II – SELECT (basic)
Module III – Table Manipulation
Module IV – GROUP BY
Module V – Subqueries
Module VI – Entity and Relationship Diagram Concepts
Module VII – Advanced BD Concepts

Internship(s)

NAO

Bibliography

Principal
– Database systems: design, implementation, and management, 13rd edition, Carlos Coronel, Steven Morris, CENGAGE Learning, 2019
– Fundamentals of Database Systems, Elmasri, Navathe, 7th edition, 2016, Pearson
– SQL, Luís Damas, maio, 2015, FCA Editores
– Bases de dados: Fundamentos e aplicações, Feliz Gouveia, 2.ª edição aumentada, 2021, FCA Editores
– Bases de Dados Relacionais – Implementação com MySQL, Orlando Belo, 2021, FCA editores
Complementar
– Database System Concepts, Silberschatz, Korth, Sudarshan, 2010, 6 th edition, McGraw-Hill, ISBN 978-0073523323 (Elementos online:
http://codex.cs.yale.edu/avi/db-book/db6/slide-dir/ )
– Modern Database Management, Jeffrey A. Hoffer, V. Ramesh, Heikki Topi, 10 th edition, 2011, Pearson,
– Projecto, Desenvolvimento de aplicações & Administração de Banco de Dados, Michael V. Mannino, 2008, McGraw-Hill
– MySQL, Frederico Tavares, 2015, FCA
– SQL SERVER 2014 Curso Completo, Alberto Magalhães, 2015, FCA