Databases I

Objectives

Introduce the fundamental concepts inherent to relational databases, namely data modeling - from a conceptual and from a physical point of view, normalization, query optimization, data integrity and transaction management, aiming to support the development of transactional systems. This curricular unit places great emphasis on a theoretical structuring of knowledge combined with the fact of providing extensive practical experience based on the use of relational DBMSs, namely Microsoft SQL Server and data modeling tools such as Sybase Power Designer.

General characterization

Code

100013

Credits

6.0

Responsible teacher

Jorge Nelson Gouveia de Sousa Neves

Hours

Weekly - Available soon

Total - Available soon

Teaching language

Portuguese. If there are Erasmus students, classes will be taught in English

Prerequisites

Basic knowledge of information systems.

Bibliography

Abraham Silberschatz, Henry F. Korth and S. Sudarshan, Database System Concepts - 7th ed., McGraw-hill, 2020

Teaching method

Oral presentation of theoretical subjects.
Practical project (groupwork).
Practical exercices in practical classes.
Quizzes in the end of each topic to consolidate knowledge (not graded)
Crash course SQL (not graded)

Evaluation method

Option 1

  • Final project - 60%
    • 1st Delivery - 25%
    • 2nd Delivery - 35%
  • First Call Exam - 40%

 

Option 2

  • Final project - 60%
    • 1st Delivery - 25%
    • 2nd Delivery - 35%
  • Second Call Exam - 40%

 

Minimum grade:

  • The final work has no minimum grade.
  • Both exams have a minimum grade of 8.0 values.

Subject matter

  • Introduction to relational database management systems and to the relational model
  • Database design
    • Entity-relationship model
    • Relational design
  • Introduction to SQL
    • Data Definition Language
    • Data Manipulation Language
  • Intermediate SQL
    • Explicit and explicit join expressions
    • Aggregations
    • Database modifications (insert, update, delete)
    • Integrity
  • Advanced SQL
    • Views
    • Stored procedures
    • Triggers
    • Indexes
    • Database grants
  • Transactions