Apresentacao Bd 5

50
Banco de Dados I Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas Campus Alegrete Cristhiano Bossardi de Vasconcellos Parte 5

Transcript of Apresentacao Bd 5

Page 1: Apresentacao Bd 5

Banco de Dados I

Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas

Campus Alegrete

Cristhiano Bossardi de Vasconcellos

Parte 5

Page 2: Apresentacao Bd 5

Exercícios

4) Dê um exemplo de um relacionamento ternário. Mostre como a mesma realidade pode ser modelada somente com relacionamentos binários.

Page 3: Apresentacao Bd 5

Respostas do 4

Número de entidades que participam de um relacionamento:2 – binário, 3 – ternário, 4 – quaternário...Exemplo: Considerando:

Page 4: Apresentacao Bd 5

Respostas dos Exercícios

Exemplo de relacionamento ternário.

Page 5: Apresentacao Bd 5

Respostas dos Exercícios

Tentativa de transformação em relacionamentos binários

Page 6: Apresentacao Bd 5

Respostas dos Exercícios

Quem é o analista do projeto P2?É possível identificá-lo?

Page 7: Apresentacao Bd 5

Respostas dos Exercícios

Uma solução que a primeira vista pode parecerequivalente ao relacionamento Ternário. Esta soluçãonão é equivalente a original. Nela ocorre perda deinformações.

Page 8: Apresentacao Bd 5

Respostas dos Exercícios

Transformação correta

Page 9: Apresentacao Bd 5

Exercícios

5) Mostre como o modelo ER abaixo pode ser representadosem uso de relacionamentos ternários, apenas usandorelacionamentos binários.

1n

n

Page 10: Apresentacao Bd 5

Respostas dos 5

Page 11: Apresentacao Bd 5

Exercícios

6) Para o exemplo de relacionamento ternário da questão anterior, justifique a escolha das cardinalidades mínima e máxima no modelo criado por você.

Page 12: Apresentacao Bd 5

Resposta do 6

•Uma cidade pode participar de no mínimo nenhuma e nomáximo n distribuições.

•Um distribuidor pode participar de no mínimo nenhuma eno máximo n distribuições.

•Um produto por participar de no mínimo nenhuma e nomáximo n distribuições.

•Uma distribuição é realizada em uma cidade por umdistribuidor e de um produto. Um e somente um.

Page 13: Apresentacao Bd 5

Exercícios

7) Considere o DER abaixo. Para que a restrição de cardinalidademínima seja obedecida, que ocorrências de entidade devemexistir no banco de dados, quando for incluída uma ocorrênciade EMPREGADO? E quando for incluída uma ocorrência deMESA?

Help: Quando se fala de ocorrências de entidade, estáse referindo a “coisas cadastradas” nesta entidade. Exemplode uma ocorrência da entidade empregado: João da Silva. CPF899888888-66, telefone 666-9090, etc.

Page 14: Apresentacao Bd 5

Resposta da 7

Já deve existir uma ocorrência da entidade MESA para podervincular um FUNCIONÁRIO a uma MESA, pois a relação é de queum empregado tenha no mínimo uma mesa e no máximotambém uma. Relação de obrigatoriedade.

Quando for incluída uma ocorrência da entidade MESA, já nãoQuando for incluída uma ocorrência da entidade MESA, já nãoexige que haja uma ocorrência na entidade EMPREGADO porquea relação é de no mínimo zero e no máximo um EMPREGADO.Desta forma, não exige obrigatoriedade nenhuma. Relação

opcional.

Page 15: Apresentacao Bd 5

Exercícios

8) Construa um DER que modela a mesma realidade que a mostrada no DER abaixo, usando apenas relacionamentos 1:n.

Page 16: Apresentacao Bd 5

Reposta da 8

A transformação do relacionamento ATUAÇÃO em entidade resulta no modelo ER abaixo. Observe que uma ocorrência de ATUAÇÃO éidentificada pelos relacionamentos com as entidades PROJETO e ENGENHEIRO.

Page 17: Apresentacao Bd 5

Exercícios

9) Considere o relacionamento EMPREGADO-DEPENDENTE queaparece na abaixo. Considere que um dependente de umempregado possa ser também empregado. Como o modelodeveria ser modificado para evitar o armazenamentoredundante das informações das pessoas que são tantodependentes quanto empregados?dependentes quanto empregados?

Page 18: Apresentacao Bd 5

Resposta da 9

9) A Figura a seguir apresenta um modelo ER que resulta da modificação domodelo proposto no exercício. A modificação consta em possibilitar que umdependente seja empregado. Caso se mantivesse o modelo original o nomedo dependente seria armazenado redundantemente. A solução adotada foi ade especializar a entidade DEPENDENTE em duas, DEP.Ñ EMP., que contém osatributos dos dependentes que não são empregados e DEP.EMP., que nãocontém atributos mas está relacionada a entidade empregadocontém atributos mas está relacionada a entidade empregadocorrespondente.

(0,n)

Page 19: Apresentacao Bd 5

Resposta da 9

Para melhor visualizar vamos observar como ficaria o modelológico, as tabelas:

Empregado Dep. Não Empregado

Codigo empregadoCodigo empregado

NomeDep. Empregado

Codigo empregado

Codigo dependente

Num. sequencia

Codigo empregado

Num. sequencia

Nome

Page 20: Apresentacao Bd 5

Exercícios

10)Construa um DER em que o conceito de entidade associativa é usado.

Page 21: Apresentacao Bd 5

Lembrando: Entidade Associativa

Um relacionamento é uma associação entre entidades.Na modelagem ER não foi prevista a possibilidade de

Resposta da 10

Na modelagem ER não foi prevista a possibilidade deassociar uma entidade com um relacionamento ou entãode associar dois relacionamentos entre si. Na prática,quando está-se construindo um novo DER oumodificando um DER existente, surgem situações emque é desejável permitir a associação de uma entidade aum relacionamento.

Page 22: Apresentacao Bd 5

Entidade Associativa

Suponha que seja necessário modificar este diagrama Suponha que seja necessário modificar este diagrama com a adição da informação de que, em cada consulta, um ou mais medicamentos podem ser prescritos ao paciente.

Page 23: Apresentacao Bd 5

Entidade Associativa

Para tal, criar-se-ia uma nova entidade, MEDICAMENTO. A questãoagora é: com que entidade existente deve estar relacionada a novaentidade? Se MEDICAMENTO fosse relacionado a MÉDICO, ter-se-ia apenas a informação de que médico prescreveu quemedicamentos, faltando a informação do paciente que os teveprescritos. Por outro lado, se MEDICAMENTO fosse relacionado aPACIENTE, faltaria a informação do médico que prescreveu oPACIENTE, faltaria a informação do médico que prescreveu omedicamento. Assim, deseja-se relacionar o medicamento àconsulta, ou seja deseja-se relacionar uma entidade(MEDICAMENTO) a um relacionamento (CONSULTA), o que nãoestá previsto na abordagem ER.

Page 24: Apresentacao Bd 5

Entidade Associativa

Para tal, foi criado um conceito especial, o de entidade associativa.

Uma entidade associativa nada mais é que a redefinição de umrelacionamento, que passa a ser tratado como se fosse tambémuma entidade.

Page 25: Apresentacao Bd 5

Entidade Associativa

Para tal, foi criado um conceito especial, o de entidade associativa.

Uma entidade associativa nada mais é que a redefinição de umrelacionamento, que passa a ser tratado como se fosse tambémuma entidade.

Page 26: Apresentacao Bd 5

Entidade Associativa

Observe-se que, caso não se desejasse usar o conceito deentidade associativa, seria necessário transformar orelacionamento CONSULTA em uma entidade, que entãopoderia ser relacionada a MEDICAMENTO.poderia ser relacionada a MEDICAMENTO.

Page 27: Apresentacao Bd 5

Exercícios

11) Considere o exemplo a seguir. Modifique ascardinalidades mínimas de forma a especificar oseguinte:

• Um curso não pode estar vazio, isto é, deve possuir ao• Um curso não pode estar vazio, isto é, deve possuir aomenos uma disciplina em seu currículo

• Um aluno, mesmo que não inscrito em nenhum curso,deve permanecer por algum tempo no banco de dados.

Page 28: Apresentacao Bd 5

Exercícios

Page 29: Apresentacao Bd 5

Resposta da 11

(1,n)

(0,1)

Page 30: Apresentacao Bd 5

Exercícios

12) Sem usar atributos opcionais, nem atributos multi-valorados, construa um DER que contenha as mesmas informações do DER abaixo:

Page 31: Apresentacao Bd 5

Resposta da 12

Page 32: Apresentacao Bd 5

Exercícios

13) O DER abaixo modela uma generalização/especialização nãoexclusiva. Construa um DER que modela a realidade descrita semusar o conceitos de generalização/especialização não exclusiva.

Page 33: Apresentacao Bd 5

Resposta da 13

PESSOA

PROFESSOR FUNCIONÁRIO ALUNO

(0,1)

Page 34: Apresentacao Bd 5

Exercícios

14) A figura abaixo apresenta um modelo de dados para uma farmácia. Descreva em português tudo o que está representado neste diagrama.

Page 35: Apresentacao Bd 5

Resposta do 14

Entidade Associativa. A entidade RECEITA médica só vaiocorrer quando a venda de um medicamento for com receita.É opcional. Ela foi criada porque perfumaria não precisareceita e nem todos os medicamentos precisam.

Page 36: Apresentacao Bd 5

Exercícios

15) Invente nomes para os relacionamentos do exercícioanterior.

Page 37: Apresentacao Bd 5

Exercícios

16) Mostre o relacionamento ternário entre Venda,Medicamento e Receita Médica em um relacionamentobinário.

Page 38: Apresentacao Bd 5

Resposta do 16

Page 39: Apresentacao Bd 5

Exercícios

17) Explique o significado das cardinalidades mínima emáxima do relacionamento ternário (entre MEDICAMENTO,VENDA e RECEITA MÉDICA) no DER.

Page 40: Apresentacao Bd 5

Resposta da 17

Uma VENDA pode possuir nenhum ou muitosMEDICAMENTOS e nenhuma ou uma RECEITA MÉDICA.

Venda medicamento

Page 41: Apresentacao Bd 5

Exercícios

18) Em princípio, uma venda deve envolver ao menos umproduto. Entretanto, isso não é exigido pelas cardinalidadesmínimas dos relacionamentos entre VENDA e MEDICAMENTOe entre VENDA e PERFUMARIA no DER. Explique porque.

Page 42: Apresentacao Bd 5

Resposta do 18

Não é possível expressar esta restrição pelo fato de omodelo ER não possuir uma notação que expresseque a união de dois relacionamentos (no caso, o deVENDA com MEDICAMENTO e o de VENDA comPERFUMARIA) tem cardinalidade mínima um. Estarestrição teria que ser especificada fora do modelorestrição teria que ser especificada fora do modeloER.

Page 43: Apresentacao Bd 5

Exercícios

19) Para cada entidade e cada relacionamento no DER defina,quando possível, atributos. Para cada entidade, indique o(s)atributo(s) identificador(es).

Page 44: Apresentacao Bd 5

Exercícios

20) A figura abaixo apresenta um DER de parte de um sistema de recursoshumanos em uma organização. Descreva em português tudo que estárepresentado neste diagrama.

Page 45: Apresentacao Bd 5

Exercícios

21) Para cada entidade e cada relacionamento do DER doexercício anterior, defina,quando possível, atributos. Para cadaentidade, indique o(s) atributo(s) identificador(es).

Page 46: Apresentacao Bd 5

Exercícios

22) De acordo com o DER, que ações devem ser tomadas aoexcluir-se do banco de dados uma secretária?

Page 47: Apresentacao Bd 5

Resposta do 22

O modelo ER expressa que um processador de textosnão pode existir no banco de dados, sem que existauma secretária que o domine (cardinalidade mínimada entidade PROCESSADOR DE TEXTOS norelacionamento DOMÍNIO). Assim, cada vez que umasecretária for excluída, é necessário verificar, parasecretária for excluída, é necessário verificar, paracada processador de textos por ela dominada. Casoela seja a última a dominar determinado processadorde textos, a secretária não poderá ser excluída, ou,alternativamente, a exclusão da secretária deverá serpropagada a exclusão do processador de textos emquestão.

Page 48: Apresentacao Bd 5

Exercícios

23) De acordo com o DER, uma secretária ou um engenheironão podem ser gerentes. Por que? Como o DER deveria sermodificado para permitir que tanto uma secretária, quantoum engenheiro pudessem ser também gerentes?

Page 49: Apresentacao Bd 5

Resposta do 23

Pela definição de especialização que consideramos nas aulas, elaé exclusiva, isto é, uma ocorrência da entidade genérica não pode

aparecer em mais de uma de suas especializações (só em umramo). Como as entidades SECRETÁRIA, ENGENHEIRO e GERENTEsão ambas especializações de EMPREGADO na mesma hierarquiade generalização/especialização, um empregado não podeaparecer em mais de uma delas. Para permitir que uma secretáriaaparecer em mais de uma delas. Para permitir que uma secretáriaou um engenheiro sejam gerentes é necessário retirar a entidadeGERENTE da mesma hierarquia de generalização/especializaçãona qual aparecem SECRETÁRIA e ENGENHEIRO. Neste caso,GERENTE passa a ser um auto-relacionamento de EMPREGADO.

Page 50: Apresentacao Bd 5

Resposta do 23