Introdução ao Projeto de Banco de Dados - Apostilas - Ciencia da Computação, Notas de estudo de Ciência da Computação. Centro Federal de Educação Tecnológico (CEFET-PA)
Alfredo_88
Alfredo_885 de Março de 2013

Introdução ao Projeto de Banco de Dados - Apostilas - Ciencia da Computação, Notas de estudo de Ciência da Computação. Centro Federal de Educação Tecnológico (CEFET-PA)

PDF (513.5 KB)
19 páginas
890Número de visitas
Descrição
Apostilas de Ciencia da Computação sobre o estudo do projeto de Banco de Dados através de uma técnica tradicional e popular chamada de modelo entidade-relacionamento(ER),o qual é um modelo gráfico com caixas e setas repr...
20pontos
Pontos de download necessários para baixar
este documento
baixar o documento
Pré-visualização3 páginas / 19
Esta é apenas uma pré-visualização
Consulte e baixe o documento completo
Esta é apenas uma pré-visualização
Consulte e baixe o documento completo
Pré-visualização finalizada
Consulte e baixe o documento completo
Esta é apenas uma pré-visualização
Consulte e baixe o documento completo
Esta é apenas uma pré-visualização
Consulte e baixe o documento completo
Pré-visualização finalizada
Consulte e baixe o documento completo

Notas de Aula - Banco de Dados Introdução ao Projeto de Banco de Dados

Esta aula introduz projeto de Banco de Dados através de uma técnica tradicional e popular chamada de modelo entidade-relacionamento(ER),o qual é um modelo gráco com caixas e setas representando os elementos dos dados e suas conexões. A Figura 1 mostra um processo de como o modelo ER é utilizado em um projeto de Banco de Dados.

Figura 1: A modelagem do banco de dados e o processo de implementação

1

Elementos do Modelo ER

No modelo ER, a estrutura de dado é representada gracamente, como um diagrama entidade- relacionamento , usando os três principais elementos: 1. Conjunto de Entidades, 2. Atributos e 3. Relacionamentos.

1.1

Conjunto de Entidades

Uma entidade é um objeto abstrato de algum tipo e coleção de entidades parecidas formam um conjunto de entidades.

A diferença entre uma entidade no modelo ER e no modelo OO é que no primeiro não existe operação nos dados. Portanto o modelo ER é um conceito estático. Vamos considerar agora um exemplo de um banco de dados de lmes (alguém conhece o imdb?). Cada lme é uma entidade e o conjunto de todos os lmes constitui um conjunto de entidades. Da mesma forma, os atores são entidades e conjunto de atores são um conjunto de entidades.

docsity.com

1.2

Atributos

Um conjunto de entidades tem associado atributos os quais são propriedades de entidades que pertencem aquele conjunto.

Quais atributos o conjunto

Filmes

do nosso banco de dados exemplo teria?

1

docsity.com

1.3

Relacionamentos

Relacionamentos são conexões entre um ou mais conjunto de entidades.

Veja a diferença entre relacionamentos e atributos, o primeiro é entre entidades e o segundo são características de apenas UM conjunto de entidades. poderia ser entidade

s

atuar-em.

Por exemplo, a relação entre

Veja que a intenção é que o uma entidade lme

pela relação

atuar-em

se

s

aparece no lme

docsity.com

m.

m

Filmes

e

Atores

esteja relacionada com um ator

1.4

Diagramas Entidade-Relacionamento

Um diagrama ER é um grafo que representa um conjunto de entidades, atributos e relacionamentos. Cada um destes elementos são representados por nós no grafo. As seguintes formas especicam o tipo do elemento:

• • •

Conjuntos de entidades são representados por retângulos. Atributos são representados elipses. Relações são representadas por losangos.

Cada aresta conecta um conjunto de entidade aos seus atributos e um relacionamento ao seus conjuntos de entidade. Veja um exemplo na Figura 2.

docsity.com

Figura 2: Um diagrama entidade-relacionamento para um banco de dados de lme

1.5

Instâncias de um Diagrama ER

Diagramas ER são uma notação para descrever esquemas de banco de dados. Podemos imaginar que um banco de dados descritos por um diagrama ER contém algum dados, uma instância do banco de dados. Para cada conjunto de entidade, uma instância do banco de dados possuirá um conjunto nito de entidades. Cada uma destas entidades possuirá determinados valores para cada atributo. Agora seja a Tabela 1. Chamamos as linhas desta tabela de conjunto de relacionamento. Por exemplo, (Os inltrados, Leonardo DiCaprio) é uma tupla em um conjunto para a instância atual do relacionamento

Atuar-em.

Vamos generalizar como deve ser um conjunto de relacionamento? Filme Um estranho no ninho Os inltrados Os inltrados Ator Jack Nicholson Leonardo DiCaprio Jack Nicholson

Tabela 1: Uma instância de Atuar-em pode ser visualizada com estes pares Digamos que um relacionamento

R

conecta

imaginar que temos um conjunto nito de tuplas que estão na instância atual do conjunto de na frente.

docsity.com

conjuntos de entidade E1 , E2 , · · · , En , então podemos (e1 , e2 , · · · , en ), onde cada ei é escolhido das entidades entidades Ei . Chamamos este conjunto genérico de tuplas

n

também de conjunto de relacionamento para R. Um pouco confuso ainda, mas veremos mais exemplos

2

docsity.com

1.6

Multiplicidade das relações binárias ER

É possível assumirmos multiplicidade de uma relação. Suponha junto de entidades

R

um relacionamento conectando con-

E

e

F.

Então:

Se cada membro de que

E

pode ser conectado por

docsity.com

R

até no máximo um membro de

F,

então dizemos

R

é uma relação um-para-muitos.

Um exemplo de uma relação assim é um professor só

pode estar em um departamento, mas vários professores podem estar em um departamento. Veja a Figura 3.

Figura 3: Uma relação ER um-para-muitos

Se

R é tanto vários-para-um de E

docsity.com

para

F

e vários-para-um de

F

para

E , então chamamos a relação

um-para-um. Veja na Figura 4 um exemplo.

Figura 4: Uma relação ER um-para-um

Se

R

não é nem vários-para-um de

E

docsity.com

para

F

ou de

F

para

E,

então podemos dizer que

R

é

muitos-para-muitos. Veja um exemplo de um diagrama na Figura 5

Figura 5: Uma relação ER muitos-para-muitos

1.7

docsity.com

Relacionamentos Múltiplos

É possível denir relacionamentos em um diagrama ER que envolve mais de dois conjuntos de entidades, no entanto este tipo de relacionamento é mais raro. Vamos pensar no exemplo do banco de dados de lmes. Um

Estudio

pode

Contratar

um

Ator

para um determinado

Filme.

E

Veja o diagrama de um

relacionamento deste tipo na Figura 6. Em relacionamentos múltiplos, uma seta apontando para uma entidade relacionadas a no máximo uma entidade em conjunto de entidade signica que se selecionamos uma entidade de cada uma dos outros conjuntos de entidades no relacionamento, estas entidades estão

docsity.com

Estúdio,

E.

No caso da Figura 6 temos um seta apontando para o

indicando que para determinados ator e lme, existe apenas apenas um ou

estúdio para o qual um ator foi contratado para aquele lme. Entretanto, não existem setas apontando para os conjuntos de entidade

Ator

Filme.

Um estúdio pode contratar vários atores para um lme e

um pode fazer contrato com um estúdio para mais de uma lme.

2

Papéis em um Relacionamento

Filme

possui com ele mesmo. Veja que cada seta representa Na Figura 8 temos um relacionamento mais complexo de

docsity.com

Veja na Figura 7 um relacionamento que

um papel diferente que a entidade desempenha no relacionamento.

Contrata.

Desta forma dois estúdios juntos

podem contratar um determinado ator, que pode ter contrato com um dos estúdios, para produzir um lme. Agora o relacionamento é descrito por uma quadrupla da forma (estudio1,estudio2,ator,lme), signicando que o estudio2 faz um contrato com o estudio1 para utilizar o ator do estudio1 e o estudio2 produz o lme.

3

docsity.com

Figura 6: Relacionamento múltiplo em um diagrama ER

Figura 7: Um relacionamento com papéis

3

Atributos em Relacionamentos

Veja como é conveniente atribuir um valor a um

Na Figura 9 temos uma relação com um atributo.

determinado contrato. A cada lme o ator pode fazer um acordo diferente com o estúdio.Talvez em outro lme, com o mesmo estúdio, o ator possa receber um salário diferente. Assim um ator pode ter diferentes salários e o estúdio pode pagar diferentes valores de salário para o ator. Neste caso teremos uma tripla com (ator,lme,estudio) associado a um único salário através do relacionado

Contrata.

Em geral, podemos colocar um ou mais atributos em qualquer relacionamento. mostra a substituição do atributo

Os valores destes A Figura 10

atributos são determinados em função de toda a tupla no conjunto de relacionamento.

Salario

docsity.com

por pela entidade

Salarios,

que possui o atributo

Salario.

Veja que a seta para a entidade Salarios é apropriada visto que o salário é determinado por todos os outros conjuntos de entidades no relacionamento. Em geral, quando fazemos estar conversão de atributo para uma entidade colocamos uma seta para o novo conjunto de entidade.

4

Convertendo Relacionamentos Ternários em Binários

Aqui temos o relacionamento ternário

Vimos que relacionamentos ternários são possíveis em diagramas ER, porém é interessante observar que relacionamentos ternários podem ser convertidos em um conjunto de relacionaamentos binários. Vamos rever a Figura 8.

Contrato

Contrato.

docsity.com

Na Figura 11 o relacionamento

foi substituído por um conjunto de relacionamentos binários.

De forma geral podemos converter um relacionamento ternário para um conjunto de relacionamentos binários da seguinte forma: 1. Crie um novo conjunto de entidade. Pense em suas entidades como tuplas no conjunto de relacionamento para um relacionamento ternário. Assim as tuplas que você tinha antes em um relacionamento ternário serão tuplas de uma entidade. 2. Introduza relacionamentos do novo conjunto de entidades para cada para cada uma das entidades do conjunto original. 3. Se um conjunto de entidade possui mais um papel, crie um relacionamento para cada papel.

5

Subclasses no Modelo ER

É possível que um conjunto de entidade contenha entidade que possuam propriedades especiais não associadas com todos os membros do conjunto. Se isso ocorre achamos útil denir um caso especial de conjuntos de entidade, ou subclasses, cada um com seus atributos em especial e/ou relacionamentos. Nós

4

docsity.com

Figura 8: Um relacionamento com quatro vias

Figura 9: Uma relação com atributos

conectamos um conjunto de entidade as suas subclasses usando um relacionamento chamado é-um, que sempre será um relacionamento um-para-um. Embora seja possível construir qualquer tipo de estrutura com conjuntos de entidades através do relacionamento é-um, devemos limitar estruturas é-um a árvores. Cuja raiz é a entidade mais geral com conjuntos de entidades mais especícos abaixo da raiz. Veja como este conceito de subclasse no diagram ER é parecido com o conceito de de subclasse em orientação a objeto, mas existe uma diferença signicativa: entidades são permitidas ter representações em uma árvore da entidade, enquanto um objeto só pode existir em exatamente uma classe ou subclasse.

6

Um Pouco de Prática

1. Projeto um banco de dados para um banco, incluindo informação sobre clientes e suas contas. Informação sobre um cliente inclui seu nome, endereço, telefone e cpf. Contas têm números, tipos (i.e., poupança, corrente) e balanços. Desenhe um diagrama ER para este banco de dados. Tenha certeza de incluir setas onde é necessário para indicar a multiplicidade do relacionamento.

5

docsity.com

Figura 10: Substituindo o atributo de relação para um conjunto de entidade

Figura 11: binários

Substituindo um relacionamento ternário por um conjunto de entidade e relacionamentos

Figura 12: Relacionamento é-um em um diagrama ER

6

docsity.com

docsity.com

comentários (0)
Até o momento nenhum comentário
Seja o primeiro a comentar!
Esta é apenas uma pré-visualização
Consulte e baixe o documento completo
Docsity is not optimized for the browser you're using. In order to have a better experience we suggest you to use Internet Explorer 9+, Chrome, Firefox or Safari! Download Google Chrome