Escolar Documentos
Profissional Documentos
Cultura Documentos
Modelo ER
Objetivo
Estudar o modelo Entidade-Relacionamento; um modelo conceitual amplamente difundido e utilizado pelos projetistas de bancos de dados.
Principais tpicos
Introduo ao Modelo Entidade-Relacionamento Conceitos:
Entidades e Atributos Atributos Compostos Atributos Multivalorados Atributos Derivados Valores Nulos de Atributos Tipos de Entidades Atributos-Chaves
Modelo ER
Principais tpicos (continuao)
Relacionamentos e Tipos de Relacionamentos Graus de um Tipo de Relacionamento Relacionamento como um Atributo Papis e Relacionamentos Recursivos Restries sobre Tipos de Relacionamentos
Razo de Cardinalidade Restrio de Participao Restrio Estrutural
Notao do DER
O DER do Sistema Companhia
Questes
3
Introduo ao Modelo ER
O Modelo Entidade-Relacionamento (MER):
um modelo de dados de alto-nvel criado com o objetivo de representar a semntica associada aos dados do minimundo. utilizado na fase de projeto conceitual, onde o esquema conceitual do banco de dados da aplicao concebido. Seus conceitos so intuitivos, permitindo que projetistas de banco de dado capturem os conceitos associados aos dados da aplicao, sem a interferncia da tecnologia especfica de implementao do banco de dados.
Introduo ao Modelo ER
O esquema conceitual criado usando-se o MER chamado Diagrama Entidade-Relacionamento (DER).
MER: Conjunto de conceitos e elementos de modelagem que o projetista de banco de dados precisa conhecer. DER: Resultado do processo de modelagem executado pelo projetista de dados que conhece o MER.
Entidades e Atributos
O objeto mais elementar que o MER representa a entidade. Uma entidade algo do mundo real que possui uma existncia independente.
Objetos, pessoas, empregado, entes, conceitos, "coisas", etc. do mundo real so representados como Entidades. Cada Entidade tem propriedades particulares que so chamadas de Atributos.
RG= 12345678
e1 CPF= 09876543210 Endereo=Rua Gois 711So Paulo, SP, 1301100 Idade=55 Telefone residencial=713-749
Salrio=1.200,00
7
Atributos Compostos
Alguns atributos podem ser divididos em subpartes com significados independentes.
Endereo
Endereo da Rua
Cidade
Estado
CEP
Nome da Rua
Nmero
Apartamento
Atributos Multivalorados
Muitos atributos tm apenas um valor (univalorados). Porm existem atributos que podem ter um conjunto de valores (Multivalorados)
e1
Atributos Derivados
So atributos cujos valores devem ser obtidos aps algum processamento utilizando informaes obtidas do prprio banco de dados:
Idade = Data_Atual - Data_Nascimento Nmero de empregados de um determinado departamento
10
O valor null pode ser aplicado tambm para denotar que o valor desconhecido.
11
Tipos de Entidades
Entidades que tm a mesma "estrutura" e a mesma semntica, so representadas como Tipo de Entidade.
Esquema (Inteno) FUNCIONRIO Nome, Idade, Salrio a1 (Joo da Silva, 55, 800) a2 (Roberto Carlos, 40, 300) a3 (Camlia Colina, 25, 200)
Extenso
12
Atributo-Chave
Uma restrio importante sobre entidades de um tipo de entidade a restrio de atributo-chave.
Todo Tipo de Entidade deve ter um atributo-chave, seja ele um atributo simples ou composto. Os valores de um atributo-chave devem ser distintos. Esta unicidade deve valer para quaisquer extenses desse tipo de entidade.
13
EMPREGADO
r1 n r2 n r3 n r4 n r5 n r6 n r7 n
DEPARTAMENTO
e1 e2 e3 e4 e5 e6 e7
d1
d2
d3
14
r3
r4
PEA b1 b2 b3
r5
r6
r7
15
16
Papis
Cada tipo de entidade que participa de um tipo de relacionamento possui um papel especfico. No caso de:
EMPREGADO TRABALHA_PARA DEPARTAMENTO,
O papel de EMPREGADO empregado ou trabalhador e do DEPARTAMENTO empregador. A escolha do nome nem sempre simples.
17
SUPERVISIONA r1 r2 r3
a1 a2 a3 a4
18
19
Participao:
especifica se a existncia de uma entidade depende dela estar relacionada com outra entidade atravs de um relacionamento.
Total (Dependncia existencial) Parcial
Restrio Estrutural:
Define o mnimo e mximo em que uma entidade pode participar de um relacionamento.
20
Razo de Cardinalidade
1:N
EMPREGADO TRABALHA_PARA DEPARTAMENTO
N
e1 e2 e3 e4 e5 e6 e7 r1 n r2 n r3 n r4 n r5 n r6 n r7 n
1
d1 d2 d3
21
Razo de Cardinalidade
1:1:
EMPREGADO GERENCIA DEPARTAMENTO
e1 e2 e3 e4 e5 e6 e7
1
r1 n r2 n r3 n
1
d1 d2 d3
22
Razo de Cardinalidade
N:N
EMPREGADO TRABALHA_EM PROJETO
N
r1 r2 r3 r4 r5 b2 b3 b4 b5
a1
b1
a2
a3
r6
23
Restrio de Participao
EMPREGADO TRABALHA_PARA DEPARTAMENTO
N
e1 e2 e3 e4 e5 e6 e7
Total
Empregado existe somente se estiver relacionado com algum departamento (Total)
r1 n r2 n r3 n r4 n r5 n r6 n r7 n
1
d1 d2 d3 d4
Parcial
Departamento pode existir mesmo no tendo nenhum empregado (Parcial)
24
Restrio Estrutural
A restrio estrutural de:
EMPREGADO (1,1), pois participa em
No mnimo em 1 e no mximo em 1 relacionamento
DEPARTAMENTO
EMPREGADO
TRABALHA-PARA
r1
DEPARTAMENTO
N e1 e2 e3 e4 e5 e6 e7 Total
n r n r n
r4
r5
6
1 d1 d2 d3 e1 e2 e3 e4 e5 e6 e7
n r n r n r n r n r n r
6 7 5 4 3 2
d1 d2 d3
n n r n
r7
Parcial
Restrio Estrutural
(1, 1)
(0, N)
25
Atributo de Relacionamento
Os Tipos de Relacionamentos tambm podem ter Atributos. Exemplos:
Quantidade de horas trabalhadas por um empregado em um dado projeto (Horas)
Pode ser representado como um atributo do relacionamento TRABALHA_EM
26
Atributo de Relacionamento
Atributos de Tipos de Relacionamentos 1:1 podem ser colocados em um dos Tipos de Entidades participantes
DataIncio em
EMPREGADO
e1 e2 e3 e4 e5 e6 e7
GERENCIA
DEPARTAMENTO
1
1
r1 n r2 n r3 n
d1
d2 d3
27
Atributo de Relacionamento
Atributos de TR 1:N podem ser colocados no TE que est no lado N do relacionamento
DataIncio em
EMPREGADO TRABALHA_PARA DEPARTAMENTO
N
e1 e2 e3 e4 e5 e6 e7 r1 n r2 n r3 n r4 n r5 n r6 n r7 n
1
d1 d2
d3
d4
DataIncio
28
Tipo de Entidade-Fraca
So Tipos de Entidades que no tm atributoschaves. Entidades s podem ser identificadas atravs da associao com uma outra Entidade.
POSSUI
r1
DEPENDENTE
CLIENTE
r2 r3 r4 r5 r6
r7
29
Tipo de Entidade-Fraca
Um tipo de entidade-fraca sempre tem restrio de participao total (dependncia existencial) com respeito ao seu tipo de relacionamento de identificao, uma vez que no possvel identificar uma entidade-fraca sem o correspondente tipo de entidade proprietria. Um tipo de entidade-fraca pode ter uma chaveparcial, que um conjunto de atributos que pode univocamente identificar entidades-fracas relacionadas mesma entidade proprietria.
30
Notao do DER
Tipo de Entidade Tipo de Entidade-Fraca Tipo de Relacionamento
R R
N
E2 E2 E
(min, max)
31
Endereo
Salrio
TRABALHA-PARA
Nome
Localizao
EMPREGADO DataNasc
DataIncio
NmeroDeEmpregados
DEPARTAMENTO
1 supervisor supervisionado
GERENCIA
CONTROLA
SUPERVISIONA
Horas
M 1 N
TRABALHA-EM
PROJETO
DEPENDENTE-DE
DEPENDENTE
Nome
Sexo
DataNasc
TipoRelao
32
Questes
1. Discuta o papel de um modelo de dados de alto-nvel no projeto de banco de dados. 2. Cite alguns possveis casos onde o valor nulo (null) pode ser aplicado. 3. Defina os seguintes termos: entidade, atributo, valor de atributo, instncia de relacionamento, atributo composto, atributo univalorado, atributo multivalorado, atributo derivado e atributo-chave. 4. Defina tipo de entidade. Descreva as diferenas entre entidade e tipo de entidade.
33
Questes
5. Defina tipo de relacionamento. Descreva as diferenas entre relacionamento e tipo de relacionamento. 6. Quando necessrio indicar papis num DER? 7. Descreva as formas alternativas de especificar restries sobre tipos de relacionamentos. Quais so as vantagens e desvantagens de cada uma? 8. Sobre quais condies um tipo de relacionamento pode se tornar um atributo de um tipo de entidade? 9. Qual o significado de um tipo de relacionamento recursivo? D alguns exemplos diferentes daquele apresentado.
34
Questes
10. Defina os termos: tipo de entidade proprietrio da identificao, tipo de relacionamento de identificao e chave-parcial. 11. Um tipo de relacionamento de identificao pode ter grau maior que dois? Justifique a sua resposta atravs de um exemplo. (Pesquise na Internet ou em [ELMASRI 2005] para responder esta questo). 12. No DER do Sistema Companhia, indique as Restries Estruturais em todos os seus Tipos de Relacionamentos.
35
Modelo ER
Referncias Bibliogrficas
1. Batini, C.; Ceri, S.; Navathe, S. Conceptual Database Design: An Entity-Relationship Approach. Benjamin/Cummings, Redwood City, Calif., 1992. 2. Date, C.J., Introduo a Sistemas de Banco de Dados, traduo da 8 edio americana, Campus, 2004. 3. Elmasri, R.; Navathe, S.B. Fundamentals of Database Systems, 4th ed. Addison-Wesley, Reading, Mass., 2003. 4. Ferreira, J.E.; Finger, M., Controle de concorrncia e distribuio de dados: a teoria clssica, suas limitaes e extenses modernas, Coleo de textos especialmente preparada para a Escola de Computao, 12a, So Paulo, 2000.
36
Modelo ER
Referncias Bibliogrficas
5. Heuser, C.A., Projeto de Banco de Dados., Sagra - Luzzatto, 1 edio, 1998. 6. Korth, H.; Silberschatz, A. Sistemas de Bancos de Dados. 3a. Edio, Makron Books, 1998. 7. Ramakrishnan, R.; Gehrke, J., Database Management Systems, 2 nd ed., McGraw-Hill, 2000. 8. Teorey, T.; Lightstone, S.; Nadeau, T. Projeto e modelagem de bancos de dados. Editora Campus, 2007.
Referncias Web
1. Takai, O.K; Italiano, I.C.; Ferreira, J.E. Introduo a Banco de Dados. Apostila disponvel no site: http://www.ime.usp.br/~jef/apostila.pdf. (07/07/2005).
37