LICENCIATURA EM Engenharia Electrotécnica e de Computadores ANO LECTIVO 1996/97 NOME DA DISCIPLINA Bases de Dados ANO 4 SEMESTRE 1 ESCOLARIDADE 2h T + 2h P DEPARTAMENTO QUE LECCIONA A DISCIPLINA DEEC
REGENTE Gabriel David CATEGORIA Professor Auxiliar AULAS PRATICAS João Correia Lopes CATEGORIA Assistente
N. T. TEORICAS 1N. T. PRATICAS 2
OBJECTIVOS DA DISCIPLINA
Pretende-se que os alunos, perante um problema de informatização, sejam capazes de definir um modelo de dados, de acordo com os princípios gerais das bases de dados e a teoria da normalização; de obter o esquema da base de dados, com particular ênfase no modelo relacional; de estudar as operações de extracção de informação recorrendo à álgebra relacional e de as implementar em SQL. Pretende-se ainda que os alunos compreendam as necessidades das novas aplicações de BD, em particular as orientadas por objectos, e que tenham sensibilidade às questões de exploração (segurança, concorrência). Nos trabalhos práticos, os alunos devem ganhar experiência de uso de um sistema comercial de gestão de BD.
CONTEÚDO DA DISCIPLINA
Sistema de informação. Modelos de dados. Modelo relacional. A linguagem de manipulação de dados SQL. Modelo orientado por objectos. Projecto de BD relacionais. Exploração de uma BD. A lógica como modelo de dados.
METODOLOGIA DA DISCIPLINA
As aulas teóricas serão usadas para exposição formal da matéria, com recurso a transparências, acompanhada da apresentação de exemplos e sua discussão. Nas aulas práticas serão propostos exercícios para resolução e trabalhos práticos utilizando o SGBD Oracle, sendo os respectivos resultados apresentados pelos alunos.
BIBLIOGRAFIA OBRIGATÓRIA
Principles of Database and Knowledge-Base Systems. Jeffrey D. Ullman. Computer Science Press, 1989.
AVALIAÇÌO
Avaliação de frequência: 30%
(incluindo trabalhos de casa)
Teste/Exame: 70%
(prova com consulta, com a duração de 2H30 horas).
É necessário obter um mínimo de 6 valores quer na nota de frequência quer na avaliação final.
PROGRAMA
* Sistema de informação. Conteúdo da BD. Os três níveis de descrição da BD.
* Modelos de dados. O formalismo entidade-associação. isa e funcionalidade das associações.
* Modelo relacional. Esquema de uma relação. Restrições de integridade. Chaves. Noções de álgebra relacional. A álgebra relacional como linguagem de interrogação. Perguntas existenciais e universais.
* A linguagem de manipulação de dados SQL. Construções fundamentais: projecção e selecção. Expressões aritméticas e lógicas. Ordenação. Funções de agregação. Junção de tabelas. Operações sobre conjuntos. Definição de vistas dinâmicas. Junção externa. Condições sobre o resultado de agregações. Subperguntas.
* Introdução às BD Orientadas por Objectos. Linguagens hospedeiras. Novas utilizações das BD. Integração de linguagens. Modelo orientado por objectos. Comparação com o modelo relacional.
* Linguagem orientada por objectos. Persistência. Definição das classes. Herança. Colecções. Pesquisa em objectos complexos. Índices. Manutenção da integridade em associações.
* Projecto de BD relacionais. Dependências funcionais. Chaves de relação. Propriedades da decomposição de esquemas. Níveis de normalização. Dependências multívocas e de junção.
* Exploração de uma BD. Segurança. Integridade. Concorrência. Recuperação.
* Sistemas baseados em conhecimento. Relações implícitas. Fecho transitivo. A lógica como modelo de dados. Datalog. Cálculo relacional de n-uplos. Redução ao conjunto das relações finitas. Cálculo relacional de domínios.