Você está na página 1de 23

Bases de Dados I

Aula 1 – EEI
13 de Fevereiro de 2003
Apresentação e funcionamento
 Rui Graça Ribeiro – ruirib@det.ua.pt
– ruirib@ieeta.pt

 Avaliação:
– 35 % Teste Teórico
– 30 % Mini testes a realizar durante aulas práticas
 1º Mini teste a 20 de Março

 2º Mini teste a 24 de Abril

– 35 % Trabalho prático final:


 10% especificação + 25 % trabalho, para propostas originais

 5 % diagrama entidade/associação + 30% trabalho comum


Trabalho final
 Propostas feitas pelos alunos:
– data limite para propostas será 18 de Março
– Propostas têm de ser avaliadas e dimensionadas
de modo a assegurar um nível de exigência
semelhante para todos
 Caso não surjam propostas até essa altura,
será proposto um trabalho para quem não o
tiver até aí
Objectivos genéricos da componente
prática de Bases de Dados I
 Familiarização com alguns conceitos
importante relativos às bases de dados e ao
seu uso para o desenvolvimento de
aplicações
 Os conceitos serão ilustrados sobre o
Microsoft Access, mas aprender Access não
é o objectivo central da componente prática
Bibliografia – Modelo E/R
 Relational Database Design With
MicroComputer Applications, Glenn A.
Jackcson, Prentice-Hall
– Abordagem ao problema da obtenção de um
modelo E/R (Cap. 6 e 8)
 An Introduction to Database Systems, C. J.
Date, Addison-Wesley
– Abordagem ao problema e notação utilizada
(Cap. 12)
Uma visão geral de uma aplicação
de base de dados
 Tabelas: armazenamento dos dados e regras de
integridade para esses dados
 Os dados são consultados e manipulados usando
instruções (queries) em linguagem SQL
(structured query language)
 Os dados obtidos usando queries são mostrados
aos utilizadores através de uma interface adequada
(forms e reports, HTML ou interface de utilizador
da aplicação específica)
Desenho de uma base dados
 Primeira tarefa:
– Encontrar a organização dos dados em tabelas que
melhor suporte a criação, actualização e consulta dos
dados a suportar
 Pretende-se, genericamente, que a estrutura:
– Permita armazenar todos os dados necessários
– Elimine, tanto quanto possível, redundância nos dados
armazenados
– O número de tabelas seja reduzido a um mínimo
– Que as tabelas não levantem problemas em termos de
actualização e eliminação de dados – que sejam
normalizadas
Modelo Entidade Associação
 Constrói-se um modelo Entidade
Associação, que reflecte as condições do
problema
 Obtido o modelo há regras muito claras,
que podem ser aplicadas para a obtenção
das tabelas, a partir do diagrama E/R
 Pode, então, avaliar-se cada uma das tabelas
obtidas, para verificar a sua “normalização”
Como obter o diagrama
 Obter uma descrição do problema
 Procurar assegurar a identificação de todas as
funcionalidades, de modo a que se possa perceber
qual a informação relevante a armazenar
 Analisar a descrição funcional e procurar
identificar as entidades e respectivas associações
 Este é um processo iterativo
Obtenção das tabelas: Modelo
Entidade Associação (E/R)
 Um modelo Entidade Associação é composto,
basicamente pelos seguintes elementos:
– Entidade: elemento do diagrama que representa algo de
interesse para a aplicação a desenvolver.
– O que quer que seja que a entidade representa, podemos
constatar que dela existem ocorrências que podem ser
distinguidas umas das outras.
– Normalmente as entidades correspondem, na descrição
do problema, a um substantivo.
Exemplos de entidade
 Entidade:
– Graficamente representada
por um rectângulo Aluno
– Entidade identificada por
um substantivo no singular

 Duas entidades:
– Aluno Curso

– Curso
Diagramas E/R: atributos
 Um atributo é uma propriedade de uma
entidade, obviamente relevante para a
aplicação que se pretende desenvolver
 Exemplos de atributos são o Nº
Mecanográfico, o Nome, a Data
Nascimento ou o Sexo, no caso do aluno,
ou o Código ou o Nome, no caso do Curso
Atributos: representação no
diagrama
Data Nasc.
Nº Mec

Aluno Aluno

(NºMec, Nome, Data Nasc., Sexo) Sexo


Nome

Representações Alternativas
Instâncias de entidades

 Aluno:
– NºMec. 10000, Joaquim Silva, ...
– Nº Mec 12332, António Silva,...
– ...
 Curso
– 8004, EET
– ...
 Averiguar que atributo ou atributos identificam
inequivocamente cada instância (ou ocorrência)
Associação
 Uma associação representa uma ligação
entre duas (binária) ou mais (ternária ou
superior) entidades
 Uma associação corresponde, na descrição
do problema, a um verbo:
– Um aluno frequenta um curso
Associação

M 1
Aluno Frequenta Curso

(NºMec, Nome, Data Nasc., Sexo) (Codigo, Nome)


Grau de uma associação
 O grau de uma associação diz-nos quantas
ocorrências de uma entidade se podem associar
com uma única ocorrência da outra:
– 1:M (1 aluno frequenta um único curso, mas um curso
tem vários alunos a frequentá-lo)
– M:N (um curso tem várias disciplinas, e cada disciplina
pode fazer parte do curriculum de vários cursos)
– 1:1 (por exemplo, um curso tem um único director e um
director dirige um único curso)
Grau de uma associação
(Codigo, Nome)

1 1
Curso Supervisiona Director

(Nº, Nome)
N

Tem

Disciplina

(Código, Nome)
Obrigatoriedade de participação
na associação
 A participação de uma entidade numa
associação pode ser considerada:
– Obrigatória:
 Todas as instâncias de uma entidade têm de

participar numa associação


– Ex: Todos os alunos têm de ter um curso
– Não obrigatória
 Uma ou mais das instâncias podem não participar na

associção
– Ex: Curso pode não ter alunos
Obrigatoriedade de participação
na associação

(Codigo, Nome)

M
1
Aluno Frequenta Curso

(NºMec, Nome, Data Nasc., Sexo)


Validade de um modelo
 São as condições específicas (reais ou assumidas)
de cada problema que determinam a validade de
um dado modelo:
– As variações podem ser maiores ou menores:
 Maiores: Mais ou menos entidades e associações, ou
associações diferentes
 Menores: Variações no grau e obrigatoriedade de participação
nas associações, por exemplo
 Para um mesmo problema pode existir mais do
que um modelo válido
Exercício
 Desenvolver um diagrama Entidade
Associação para uma base de dados de
suporte a uma biblioteca:
– A biblioteca tem sócios que podem levar livros
para empréstimo. Pretende-se fazer o registo de
todas as obras, de todos os sócios e das
requisições de livros feitas pelos sócios
Exercício
 Gestão de uma loja de venda de peças -
construir um modelo E/R de suporte para
essa gestão:
– Stock de peças existentes
– Fornecedores das peças, com contactos
– Clientes, com contactos
– Vendas a clientes
– Encomendas a fornecedores

Você também pode gostar