Databases
Objectives
To provide the basis for the modeling, implementation, analysis and manipulation of relational databases.
Objectives
Knowledge
- To know the entity-relationship model and the relational data model, as well as the foundations of the object-relational model
- Relational algebra as the formal language of relational data base querying and manipulation
- Foundations of the SQL language (both as a definition and as a manipulation language)
- Normalization of data bases using functional and multi-valued dependencies
Know-how
- To model a medium sized real problem first using Entity-Relationship Diagrams and then a relational database (the resulting data base should have 10 to 20 tables)
- To create a database in SQL for the medium-sized problem, including implementation of the basic mechanisms for guaranteeing referential integrity
- To implement a simple interface for manipulation of the database
- To be familiar writing complex SQL queries
Soft-Skills
- Capability of doing team work in collaboration
- Problem modeling capabilities
- Write an analysis report, design and implement a solution
- Manage time and deadlines
General characterization
Code
7747
Credits
6.0
Responsible teacher
Carlos Augusto Isaac Piló Viegas Damásio, Joaquim Francisco Ferreira da Silva
Hours
Weekly - 5
Total - Available soon
Teaching language
Português
Prerequisites
Available soon
Bibliography
Recommended book
- Database System Concepts, 5th Edition.
Abraham Silberschatz, Henry F. Korth and S. Sudarshan
McGraw Hill, 2005
ISBN 0-07-295886-3
Slides and exercises
- After each class the sldes and exercises will be made available online in the course''''''''s web page.
Teaching method
Available soon
Evaluation method
Available soon
Subject matter
- Introduction to Database Management Systems
- Data models
- Entity-Relationship model
- Relational model
- Relational databases normalization
- Functional and multi-valued dependencies
- Normal forms: 3rd, 4th and Boyce-Cood
- Database manipulation languages
- Relational Algebra
- SQL query and manipulation language
- Other languages
- Pivot tables and Data Cube
- Database integrity and security
- Referential integrity
- Assertions and triggers
Programs
Programs where the course is taught: