Conhecimentos de Base Recomendados
Recomenda-se que os estudantes possuam conhecimento básicos de programação, lógica e matemática discreta.
Métodos de Ensino
Nesta unidade curricular são utilizadas as seguintes metodologias de ensino:
1 – Método expositivo: método explicativo onde fundamentos teóricos e conceito são apresentados pelo professor
e discutidos com a turma, seguido de exemplos demonstrativos;
2 – Método experimental: método activo onde o aluno desenvolve o conhecimento através da resolução problemas
e o desenvolvimento de projectos laboratoriais individuais ou em dinâmica de grupo.
Resultados de Aprendizagem
Espera-se que no final da unidade curricular o aluno esteja habilitado a:
1. Compreender os conceitos básicos em bases de dados relacionais: modelo relacional, integridade, normalização
e operações relacionais;
2. Manipular bases de dados através da linguagem SQL (Standard Query Language);
3. Conceber um projecto de transaccional;
4. Projectar, conceber e implementar bases de dados recorrendo ao modelo de Entidade-Relacionamento;
5. Planear, desenvolver e manter aplicações de bases de dados.
Programa
1. Introdução às Bases de Dados e Conceitos Básicos
- Modelos de Dados
- Entidades e Abstracções
- Cardinalidade
- Modelo de Dados Relacional
- Atributos
- Chaves Primárias, Candidatas e Forasteiras
- Integridade Referencial
- Dependência funcional
2. Operações relacionais e aspectos básicos de SQL
- Linguagem SQL
- Operações Relacionais
- Tipos de Dados
- Restrições de Integridade
- Linguagem de Definição de Dados
- Linguagem de Manipulação de Dados
- Vistas
- Segurança e Privilégios
- Definição de esquemas e manipulação de dados usando SQL
3. Transacções e Controlo de Concorrência
- Transacções
- Savepoints, Segmentos de Rollback, Commits
- Concorrência e Consistência
- Bloqueios
- Impasses
4. Dependência Funcional e Normalização
- Projecto de Base de Dados: 1a, 2a e 3a Forma Normal (1FN,2FN,3FN)
- Forma Normal de Boyce Codd (FNBC)
- Regras de Inferência de Dependência Funcional
5. Projecto de Bases de Dados
- Diagramas de Entidade-Relacionamento
- Graus de Participação
- Relacionamentos Binários
Docente(s) responsável(eis)
Cristina Margarida Chuva CostaMétodos de Avaliação
A avaliação da unidade curricular é dividida da seguinte forma:
1. Exame Escrito: 14 Valores
- Modelo Entidade/Relacionamento: 5 Valores;
- Linguagem SQL: 5 Valores;
- Normalização, recuperação e concorrência: 4 Valores.
2. Trabalho prático: 6 Valores
Durante o semestre serão realizados dois testes, um sobre Modelo Entidade/Relacionamento e o outro sobre Linguagem SQL, dispensando os alunos de fazer essas componentes no exame. Caso optem por efetuar nova avaliação às componentes realizadas durante o semestre, a última nota obtida prevalece sobre as notas anteriores (mesmo que seja inferior). O primeiro teste será realizado entre a 4ª e a 8ª semana de aulas, enquanto que o segundo entre a 8ª e a 12ª semana.
Relativamente ao trabalho prático, deve ser considerado o seguinte:
- Os alunos deverão organizar-se em grupos de no máximo 3 elementos;
- É obrigatória a obtenção de uma classificação igual ou superior a 35%. A não obtenção desta classificação mínima implica a reprovação à disciplina;
- A nota do trabalho prático será considerada em todas as épocas de exame a realizar durante o ano lectivo;
- A data de entrega será a penúltima semana de aulas;
- A defesa do trabalho é obrigatória e será efetuada na última semana de aulas. A não comparência à defesa implica a anulação do trabalho e consequente reprovação à disciplina.
Estágio(s)
NAO
Bibliografia
Ramakrishnan, R., & Gehrke, J. (2003). Database management systems (3rd ed.). McGraw-Hill. ISBN 0072465638 (1A-5-78 (ISEC) – 10678)
Gouveia, F. (2014). Fundamentos de bases de dados. FCA.
Damas, L. M. D. (2017). SQL: Structured Query Language (14th ed.). FCA. ISBN 9789727228294 (1A-5-84CD (ISEC) – 10700)
Groff, J. R., & Weinberg, P. N. (2002). SQL: The complete reference (2nd ed.). McGraw-Hill. ISBN 0072225593 (1A-5-24 (ISEC) – 05724)