Buscar

aula_4-5_bd_IESB_2013_1_sul_2

Prévia do material em texto

1
1
Disciplina Banco de Dados (BD)Disciplina Banco de Dados (BD)
44ªª -- 55ªª Aulas Aulas -- Projeto de Banco de Dados Projeto de Banco de Dados -- MER MER -- II2013/1 2013/1 -- CCON4A e ENGN6CCCON4A e ENGN6C
IESB SulIESB Sul
2
Planejamento - BD I - 2013/1 - (previsão)
D S T Q Q S S D S T Q Q S S
1 2 1
3 4 5 6 7 8 9 2 3 4 5 6 7 8
10 11 12 13 14 15 16 9 10 11 12 13 14 15
17 18 19 20 21 22 23 16 17 18 19 20 21 22
24 25 26 27 28 23 24 25 26 27 28 29
30
D S T Q Q S S D S T Q Q S S
1 2 1 2 3 4 5 6
3 4 5 6 7 8 9 7 8 9 10 11 12 13
10 11 12 13 14 15 16 14 15 16 17 18 19 20
17 18 19 20 21 22 23 21 22 23 24 25 26 27
24 25 26 27 28 29 30 28 29 30 31
31
D S T Q Q S S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
D S T Q Q S S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
ABRIL
MAIO
JUNHO
JULHO
FEVEREIRO
MARÇO
LEGENDA
Feriado / Recesso
Aula
Lançamento (P1, P2 e Subst)
Início / Término Aulas
Avaliação (P1, P2 e Subst)
Edad
2
3
Banco de Dados (BD)
Para assistir a aula: Para assistir a aula: 
éé necessnecessáário estar que o aluno esteja rio estar que o aluno esteja 
matriculado na disciplina matriculado na disciplina 
(deve estar na lista de chamada)(deve estar na lista de chamada)
procurar a Coordenaprocurar a Coordenaçção do Curso ão do Curso 
para a solupara a soluçção de problemasão de problemas
4
LeiamLeiam
CCóódigo de digo de ÉÉticatica
ResoluResoluçção Conselho Superior não Conselho Superior nºº 02/201002/2010
de 12 de agosto de 2010de 12 de agosto de 2010
(dispon(disponíível na plataforma "vel na plataforma "BlackboardBlackboard")")
Banco de Dados
3
5
BD
Banco de Dados
EE--mail para receber o material enquanto não mail para receber o material enquanto não 
estestáá dispondisponíível o site da disciplinavel o site da disciplina
wpereira@cpovo.net
BD - Enviar material
6
�� BIBLIOGRAFIABIBLIOGRAFIA
�� Bibliografia bBibliografia báásica (ordem alfabsica (ordem alfabéética):tica):
�� DATE, CHRISTOPHER JDATE, CHRISTOPHER J. . IntroduIntroduçção a Sistemas de Bancos ão a Sistemas de Bancos 
de Dadosde Dados. Rio de Janeiro: Campus, 2000. . Rio de Janeiro: Campus, 2000. 
�� HEUSER, Carlos AlbertoHEUSER, Carlos Alberto. . Projeto de banco de DadosProjeto de banco de Dados. 6.ed. . 6.ed. 
Porto Alegre: Porto Alegre: BookmanBookman, 2010, 2010 ..
�� SILBERSCHATZ, Korth; SUDARSHANSILBERSCHATZ, Korth; SUDARSHAN. . Sistema de Banco Sistema de Banco 
de Dadosde Dados. 3. ed. São Paulo: Makron Books, 2005.. 3. ed. São Paulo: Makron Books, 2005.
Banco de Dados (BD)
4
7
�� BIBLIOGRAFIABIBLIOGRAFIA
�� Bibliografia complementar (ordem alfabBibliografia complementar (ordem alfabéética):tica):
�� ELMASRI, R.; NAVATHE, S. BELMASRI, R.; NAVATHE, S. B. . Sistemas de Banco de DadosSistemas de Banco de Dados. 4. ed. São . 4. ed. São 
Paulo: Pearson Education do Brasil, 2005.Paulo: Pearson Education do Brasil, 2005.
�� KROENKE, David MKROENKE, David M. . Banco de Dados: fundamentos, projeto e Banco de Dados: fundamentos, projeto e 
implementaimplementaççãoão. 6. ed. Rio de Janeiro: LTC, 1999.. 6. ed. Rio de Janeiro: LTC, 1999.
�� MACHADO, Felipe Nery; ABREU, MauricioMACHADO, Felipe Nery; ABREU, Mauricio. . Projeto de Banco de Dados: Projeto de Banco de Dados: 
uma visão pruma visão prááticatica. 16. ed. São Paulo: . 16. ed. São Paulo: ÉÉrica, 2009.rica, 2009.
�� MELO, Rubens NMELO, Rubens N. . Banco de Dados em AplicaBanco de Dados em Aplicaçções Clienteões Cliente--ServidorServidor. Rio . Rio 
de Janeiro: Infobook, 1997.de Janeiro: Infobook, 1997.
�� SETZER, Valdemar W; SILVA, FlSETZER, Valdemar W; SILVA, Fláávio Soares Correavio Soares Correa. . Bancos de Dados: Bancos de Dados: 
aprenda o que são, melhore seu conhecimento, construa o seuaprenda o que são, melhore seu conhecimento, construa o seu. São Paulo: . São Paulo: 
Edgard BlEdgard Blüücher Ltda, 2005.cher Ltda, 2005.
Banco de Dados (BD)
8
�� SITES PARA APROFUNDAMENTO E FERRAMENTAS:SITES PARA APROFUNDAMENTO E FERRAMENTAS:
�� brModelo 2.0brModelo 2.0. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel 
em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012.em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012.
�� DBDesigner 4DBDesigner 4. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel 
em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. 
�� MySQLMySQL. . Sistema Gerenciador de Banco de Dados MySQLSistema Gerenciador de Banco de Dados MySQL. Dispon. Disponíível vel 
em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. 
�� OracleOracle. . Sistema Gerenciador de Banco de Dados OracleSistema Gerenciador de Banco de Dados Oracle. Dispon. Disponíível em: vel em: 
<http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. <http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. 
�� Power DesignerPower Designer. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. dispon. disponíível vel 
em: em: 
<http://www.sybase.com/products/modelingdevelopment/powerdesigne<http://www.sybase.com/products/modelingdevelopment/powerdesigner>. r>. 
Acesso em Acesso em 29 jul. 2012.Acesso em Acesso em 29 jul. 2012.
Banco de Dados (BD)
5
9
FIES
10
Plano de Ensino
6
11
Plano de Ensino
12
Comecem a formar as equipes para o Comecem a formar as equipes para o 
11°° TrabalhoTrabalho
Banco de Dados
7
13
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
14
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
8
15
Por que informatizar adequadamente
ProduProduççãoão VendasVendas ComprasCompras
Redundância de dados (não controlada)Redundância de dados (não controlada)
RepetiRepetiçção de dadosão de dados
Inconsistência de dadosInconsistência de dados
HHáá problema ?? Qual ??problema ?? Qual ??
ProdutosProdutos ProdutosProdutos ProdutosProdutos
Sistemas isoladosSistemas isolados
EmpresaEmpresa
16
Por que informatizar adequadamente
ProduProduççãoão VendasVendas ComprasCompras
ProdutosProdutos
Redundância de dados (controlada)Redundância de dados (controlada)
ProdutosProdutos ProdutosProdutos
9
17
Por que informatizar adequadamente
ProduProduççãoão VendasVendas ComprasCompras
Redundância de dados (controlada)Redundância de dados (controlada)
Como saber exatamente quais objetos devem estar no BD ??Como saber exatamente quais objetos devem estar no BD ??
ProdutosProdutosProdutos
18
�� AbstraAbstraçção do mundo realão do mundo real
Informatização de Organização ou Corporação
Destes, quais devem ser Destes, quais devemser 
armazenados ??armazenados ??
Quais os componentes, dados e Quais os componentes, dados e 
informainformaçções são importantes ??ões são importantes ??
EmpregadoEmpregadoEmpregado
ClienteClienteCliente
Projeto 
de BD
Projeto Projeto 
de BDde BD Quais as etapas ??Quais as etapas ??Quais as etapas ??
O que é ??O que O que éé ????
O que fazer ??O que fazer ??O que fazer ??
Mundo real: EmpresaMundo real: Empresa
10
19
Importância da Modelagem
20
Importância da Modelagem
FIMFIM
MEIOMEIO
ININÍÍCIOCIO
11
21
Importância da Modelagem
Empregado
Cliente
?????
???ININÍÍCIOCIO
FIMFIM
22
Importância da Modelagem
EmpregadoEmpregado
ClienteCliente
Projeto 
de BD
Projeto 
de BD Quais as etapas ??Quais as etapas ??
O que é ??O que é ??
O que fazer ??O que fazer ??
Mundo real: Empresa
12
23
Modelo 
Conceitual
Modelo 
Conceitual
Modelo 
Lógico
Modelo 
Lógico
Modelo 
Físico
Modelo 
Físico
Modelo de Banco 
de Dados
Níveis de Abstração
Analista
organiza idéias
(abstração da realidade)
Mini-mundoMini-mundo
Projeto de 
Banco de 
Dados
Projeto de 
Banco de 
Dados
Define
Descreve
BDBD
Mundo real: Empresa
24
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
13
25
�� Modelo conceitual de dados:Modelo conceitual de dados:
�� Os objetos, caracterOs objetos, caracteríísticas e relacionamentos tem a sticas e relacionamentos tem a 
representarepresentaçção fiel ao ambiente observado, ão fiel ao ambiente observado, independente de independente de 
limitalimitaçções impostas por tecnologiasões impostas por tecnologias,, ttéécnicas de cnicas de 
implementaimplementaççãoão ouou dispositivos fdispositivos fíísicossicos
�� Devem ser Devem ser ignoradas particularidades de implementaignoradas particularidades de implementaçção, ão, 
abordagem tecnolabordagem tecnolóógicagica (hier(hieráárquica, rede, relacional, rquica, rede, relacional, 
orientado a objetos), assim como o modo de implementaorientado a objetos), assim como o modo de implementaçção ão 
futurafutura
Projeto de Banco de Dados
Mundo RealMundo Real
EmpregadoEmpregado
NúmeroNNúúmeromero
NomeNomeNome
EndereçoEndereEndereççoo
DepartamentoDepartamentoDepartamento
SalárioSalSalááriorio
Abstração
Criação de um conceito
26
�� Modelo conceitual de dados:Modelo conceitual de dados:
�� Modelo de dados abstrato que Modelo de dados abstrato que descreve o BD descreve o BD 
independentemente da tecnologiaindependentemente da tecnologia
�� Registra Registra quais dadosquais dados podem aparecer podem aparecer no BDno BD, , mas não como mas não como 
estes dados armazenadosestes dados armazenados
�� TTéécnica mais difundida: Modelo Entidadecnica mais difundida: Modelo Entidade--Relacionamento Relacionamento 
((MERMER))
�� Modelagem conceitual : Modelagem conceitual : 11ªª etapa de um Projeto de BDetapa de um Projeto de BD
Projeto de Banco de Dados
14
27
�� Modelo conceitual de dados:Modelo conceitual de dados:
Projeto de Banco de Dados
Modelo conceitualModelo conceitual
28
�� Modelo lModelo lóógico de dados:gico de dados:
�� Tem como Tem como basebase o o modelo conceitualmodelo conceitual
�� Aquele em que os Aquele em que os objetosobjetos, , caractercaracteríísticassticas e e relacionamentosrelacionamentos
têm a representatêm a representaçção de acordo com as regras de ão de acordo com as regras de 
implementaimplementaçção e limitaão e limitaçções impostas por algum tipo de ões impostas por algum tipo de 
tecnologiatecnologia
�� DescriDescriçção de um BD visto pelo usuão de um BD visto pelo usuáário do SGBD, sendo rio do SGBD, sendo 
dependente de um tipo particular de tecnologiadependente de um tipo particular de tecnologia ou ou 
abordagem do SGBD. Ex: relacional, hierabordagem do SGBD. Ex: relacional, hieráárquico ou redesrquico ou redes
�� Projeto lProjeto lóógico: gico: 22ªª etapa de um Projeto de BDetapa de um Projeto de BD
Projeto de Banco de Dados
15
29
�� Modelo lModelo lóógico de dados:gico de dados:
Projeto de Banco de Dados
Modelo conceitualModelo conceitual
Modelo lógicoModelo lógico
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
30
�� Modelo fModelo fíísico de dados:sico de dados:
�� Tem como Tem como basebase o o modelo lmodelo lóógicogico
�� RepresentaRepresentaçção dos ão dos objetosobjetos, , caractercaracteríísticassticas e e relacionamentosrelacionamentos
de acordo com o Banco de Dados utilizado e a plataformade acordo com o Banco de Dados utilizado e a plataforma. . 
Ex: Ex: OracleOracle, , MS SQL ServerMS SQL Server, , IngresIngres, , PostGreSQLPostGreSQL, , MySQLMySQL
(Windows, Unix, Linux, etc.)(Windows, Unix, Linux, etc.)
�� estruturas festruturas fíísicas de armazenamentosicas de armazenamento
�� ííndicesndices
�� tipos de campostipos de campos
�� tamanho dos campos e etc. tamanho dos campos e etc. 
�� Projeto fProjeto fíísico: sico: 33ªª etapa de um Projeto de BDetapa de um Projeto de BD
Projeto de Banco de Dados
BDBDBD
16
31
Projeto de Banco de Dados
Modelo conceitualModelo conceitual
Modelo lógicoModelo lógico
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
Modelo físicoModelo físico
CODIGO DESCRICAO
1 COMPUTADOR
2 IMPRESSORA
TIPO_PRODUTO
CODIGO DESCRICAO PRECO COD_TIPO
1 DESKTOP DELL MODELO P III 2500 1
2 NOTEBOOK TOSHIBA L 1.7 3500 1
3 HP 692 C JATO DE TINTA 600 2
4 EPSON 1500 L LASER 1200 2
PRODUTO
Banco de Dados XYZ
BDBDBD
�� Modelo fModelo fíísico de dados:sico de dados:
32
Projeto de Banco de Dados
Modelo 
conceitual
“rascunho”
Modelo 
conceitual
“rascunho”
Modelo
físico
“concreto”
Modelo
físico
“concreto”
Empregado
Cliente
Empregado
Cliente
Empregado
Cliente
Empregado
Cliente
Modelo
lógico
“tecnologia”
Modelo
lógico
“tecnologia”
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
17
33
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
34
�� MarMarçço de 1976, o de 1976, Peter P. ChenPeter P. Chen: : 
�� Artigo considerado referencial para o processo de modelagem de Artigo considerado referencial para o processo de modelagem de 
dados: dados: 
�� ““TheThe EntityEntity--RelationshipRelationshipModel: Model: TowardToward thethe unified unified viewview of of 
datadata””
�� O O modelo de dadosmodelo de dados éé representado atravrepresentado atravéés de notas de notaçções grões grááficasficas que que 
recebe o nome de recebe o nome de Diagrama EntidadeDiagrama Entidade--Relacionamento (DER)Relacionamento (DER)
�� Linguagem de modelagem de dados grLinguagem de modelagem de dados grááficafica que permite realizar a que permite realizar a 
modelagem conceitual de dadosmodelagem conceitual de dados
Abordagem Entidade-Relacionamento
18
35
�� Principais elementos grPrincipais elementos grááficos de um DER:ficos de um DER:
�� EntidadeEntidade
�� RelacionamentoRelacionamento
�� CardinalidadeCardinalidade
�� GeneralizaGeneralizaçção / Especializaão / Especializaççãoão
�� AgregaAgregaççãoão
Abordagem Entidade-Relacionamento
36
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
19
37
Abordagem Entidade-Relacionamento
Mundo real: Empresa
EmpregadoEmpregado
Projeto 
de BD
Empregado
Produto
Nome
Endereço
Matrícula
Telefone
N° conta bancária
Idade
Peso
ProdutoProduto
Nome
Fabricante
Prateleira
Preço
Quantidade
Peso
De cada “objeto” essencial ao projeto, quais são 
as características importantes de cada um ??
O que caracteriza cada objeto importante ??
38
Abordagem Entidade-Relacionamento
Mundo real: Empresa
EmpregadoEmpregado EmpregadoEmpregado
ProdutoProduto
Como se pode diferenciar 2 instâncias de empregado ??
Nome
Endereço
Matrícula
Telefone
N° conta bancária
Idade
Peso
EndereçoNome
Matrícula Telefone
Empregado
EndereçoNome
Matrícula Telefone
Empregado
20
39
�� Entidade: Entidade: 
�� Atributos: Atributos: 
�� EspecificaEspecificaçção das propriedades das entidades. ão das propriedades das entidades. 
�� Caracteriza a Entidade (lhe dCaracteriza a Entidade (lhe dáá ““personalidadepersonalidade””))
�� Qualifica a entidadeQualifica a entidade
�� Possibilita identificar uma entidade (diferenciar uma Possibilita identificar uma entidade (diferenciar uma 
ocorrência de entidade das demais)ocorrência de entidade das demais)
Abordagem Entidade-Relacionamento
40
Abordagem Entidade-Relacionamento
�� Entidade: Entidade: 
�� Atributos: Atributos: 
�� ““SimplesSimples””: omite: omite--se a cardinalidade (1,1) se a cardinalidade (1,1) ““um e somente umum e somente um””
�� Com cardinalidadeCom cardinalidade: quantidade poss: quantidade possííveis de ocorrências de veis de ocorrências de 
um atributo para uma um atributo para uma úúnica instância da Entidadenica instância da Entidade
�� Identificador simplesIdentificador simples ou ou compostocomposto: conjunto de um ou mais : conjunto de um ou mais 
atributos que permitem distinguir uma ocorrência das demaisatributos que permitem distinguir uma ocorrência das demais
Atributo com 
cardinalidade Atributo “simples”
Identificador 
simples
Identificador 
composto
21
41
�� Entidade: Entidade: 
�� ObservaObservaçção sobre os ão sobre os Identificadores de EntidadeIdentificadores de Entidade: : 
�� Deve ser mDeve ser míínimonimo: deve ser o suficiente para identificar uma : deve ser o suficiente para identificar uma 
ocorrência da entidadeocorrência da entidade
�� Cada entidade deve possuir Cada entidade deve possuir um um úúnico identificadornico identificador
�� Se uma Entidade possuir Se uma Entidade possuir mais de um identificadormais de um identificador, o , o 
Projetista ou modelador do BD deve escolher o mais adequadoProjetista ou modelador do BD deve escolher o mais adequado
Abordagem Entidade-Relacionamento
“mínimo” e “único”
“escolhido”
42
�� Entidade: Entidade: 
�� ““FracaFraca”” ou com relacionamento identificador: ou com relacionamento identificador: 
�� Os Os atributosatributos de uma entidade por si sde uma entidade por si sóó não permite identificarnão permite identificar
unicamenteunicamente uma ocorrência de uma ocorrência de entidadeentidade
�� O identificador da Entidade Fraca O identificador da Entidade Fraca éé composto por atributoscomposto por atributos
desta Entidadedesta Entidade mais atributos de outra Entidademais atributos de outra Entidade com a qual se com a qual se 
relaciona (relacionamento identificador)relaciona (relacionamento identificador)
Abordagem Entidade-Relacionamento
Atributo de Entidade “Fraca”
22
43
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
44
�� Relacionamento binRelacionamento bináário:rio:
�� RepresentaRepresentaçção grão grááficafica
�� Para que serve ???Para que serve ???
�� Qual a diferenQual a diferençça entre as duas representaa entre as duas representaçções abaixo ??? ões abaixo ??? 
Abordagem Entidade-Relacionamento
?? ≠ ??
23
45
�� Por que estabelecer relacionamento binPor que estabelecer relacionamento bináário ??rio ??
��No modelo abaixo, quais destas perguntas podem ser respondidas ?No modelo abaixo, quais destas perguntas podem ser respondidas ???
Abordagem Entidade-Relacionamento
p6
p3
p1
p4
p2
p5p6p6
p3p3
p1p1
p4p4
p2p2
p5p5
d1
d3
d2
d1d1
d3d3
d2d2
SimQuaisQuais PRODUTOS PRODUTOS estãoestão cadastradoscadastrados ????
QuaisQuais DEPARTAMENTOS DEPARTAMENTOS estãoestão cadastradoscadastrados ????
O PRODUTO p4 O PRODUTO p4 estestáá em em qualqual DEPARTAMENTO ??DEPARTAMENTO ??
QuaisQuais osos PRODUTOS PRODUTOS queque estãoestão no DEPARTAMENTO d1 ??no DEPARTAMENTO d1 ??
Sim
Não
Não
46
�� Relacionamento binRelacionamento bináário:rio:
�� Conjunto de Conjunto de associaassociaççõesões entre entre 2 entidades2 entidades
�� Permite manter informaPermite manter informaçções sobre a associaões sobre a associaçção entre objetosão entre objetos
Abordagem Entidade-Relacionamento
p6
p3
p1
p4
p2
p5 d3
d2
d1
24
47
�� Relacionamento binRelacionamento bináário:rio:
�� Conjunto de Conjunto de associaassociaççõesões entre entre 2 entidades2 entidades
�� Permite manter informaPermite manter informaçções sobre a associaões sobre a associaçção entre objetosão entre objetos
Abordagem Entidade-Relacionamento
d1
d3
d2
p1,d1
p4,d2
p2,d1
p5,d3p6
p3
p1
p4
p2
p5
Diagrama de ocorrências
48
�� Relacionamento binRelacionamento bináário:rio:
�� Conjunto de Conjunto de associaassociaççõesões entre entre 2 entidades2 entidades
�� Permite manter informaPermite manter informaçções sobre a associaões sobre a associaçção entre objetosão entre objetos
Abordagem Entidade-Relacionamento
d1
d3
d2
p1,d1
p4,d2
p2,d1
p5,d3p6
p3
p1
p4
p2
p5
Diagrama de ocorrências
25
49
�� Por que estabelecer relacionamento binPor que estabelecer relacionamento bináário ??rio ??
��No modelo abaixo, quais destas perguntas podem ser respondidas ?No modelo abaixo, quais destas perguntas podemser respondidas ???
Abordagem Entidade-Relacionamento
SimQuaisQuais PRODUTOS PRODUTOS estãoestão cadastradoscadastrados ????
QuaisQuais DEPARTAMENTOS DEPARTAMENTOS estãoestão cadastradoscadastrados ????
O PRODUTO p4 O PRODUTO p4 estestáá em em qualqual DEPARTAMENTO ??DEPARTAMENTO ??
QuaisQuais osos PRODUTOS PRODUTOS queque estãoestão no DEPARTAMENTO d1 ??no DEPARTAMENTO d1 ??
Sim
Sim
Sim
d1
d3
d2
d1d1
d3d3
d2d2
p6
p3
p1
p4
p2
p5p6p6
p3p3
p1p1
p4p4
p2p2
p5p5
p1,d1p1,d1p1,d1
p2,d1p2,d1p2,d1
p5,d3p5,d3p5,d3
p4,d2
50
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
26
51
� Relacionamento binário: 
� Não precisa ser, necessariamente, com entidades diferentes
� Auto-relacionamento
� Papel no relacionamento
Abordagem Entidade-Relacionamento
“ ”
Cuidado: a representação de PESSOA
para PESSOA não existe; foi montada 
somente para auxiliar o entendimento
52
� Relacionamento binário: 
� Não precisa ser, necessariamente, com entidades diferentes
� Auto-relacionamento
� Papel no relacionamento
Abordagem Entidade-Relacionamento
Diagrama de ocorrências
p4, p7
marido
esposa
marido
esposa
p1,p3
p5
p2
p6p3
p7
p4
p1
27
53
� Nomes dos relacionamentos binários:
Abordagem Entidade-Relacionamento
???
???
???
54
� Nomes dos relacionamentos binários:
�Usar um nome significativo que represente a relação binária em 
ambos os sentidos (da direita para esquerda e vice-versa)
�Não usar verbos:
� Fornecimento, Emissão, Recebimento, Compra, Prescrição, 
Formação, Alocação, Contratação, Utilização, Aquisição, 
Cadastramento, Atribuição, Registro, Lotação, Receita, 
Atendimento, Residência, Provisão, Consulta, Associação, 
Especificação, Emprego, Incorporação, Realização, Execução, 
Capacidade, Capacitação, Composição, Distribuição, 
Responsabilidade, Financiamento, Atuação, Gerência, 
Participação, Casamento, Supervisão, Trabalho, Localização, 
Atuação, Organização, Distribuição, Utilização, Submissão, 
Avaliação, Concorrência, etc.
�Não usar POSSUI , POSSE, ESTÁ, É, FAZ, TEM, CONTÉM, etc.
Abordagem Entidade-Relacionamento
28
55
USARNÃO USAR
� Nomes dos relacionamentos binários (exemplos):
Abordagem Entidade-Relacionamento
56
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
29
57
�Cardinalidade de relacionamentos binários:
�Quantidade de ocorrências de uma entidade associadas a uma 
determinada ocorrência de outra entidade através do relacionamento. 
Abordagem Entidade-Relacionamento
Cardinalidades “simples”. Exemplos: (1) ; (n) (máximas)
1 ocorrência de 1 ocorrência de 
DEPARTAMENTO pode DEPARTAMENTO pode 
estar associada a estar associada a 
nenhuma, uma ou vnenhuma, uma ou váárias rias 
ocorrências de PRODUTOocorrências de PRODUTO
1 ocorrência de 1 ocorrência de 
CANDIDATO estCANDIDATO estáá
associada a, no massociada a, no mááximo, ximo, 
uma ocorrência de CIDADEuma ocorrência de CIDADE
1
1
58
�Cardinalidade de relacionamentos binários:
�Quantidade de ocorrências de uma entidade associadas a uma 
determinada ocorrência de outra entidade através do relacionamento. 
Abordagem Entidade-Relacionamento
1 ocorrência de 1 ocorrência de 
DEPARTAMENTO pode DEPARTAMENTO pode 
estar associada a estar associada a 
nenhuma ou vnenhuma ou váárias rias 
ocorrências de PRODUTOocorrências de PRODUTO
1 ocorrência de 1 ocorrência de 
CANDIDATO estCANDIDATO estáá
associada a uma e associada a uma e 
somente uma ocorrência somente uma ocorrência 
de CIDADEde CIDADE
1
1
Cardinalidade (mínima, máxima). Ex: (0,1) ; (1,1) ; (1,n) ; (0,n) ; (n,n)
30
59
� Exemplos de cardinalidade de relacionamentos binários:
Abordagem Entidade-Relacionamento
PESSOA
marido esposa
CASAMENTO
11
LOTAÇÃO DISCIPLINA
(0,35) (1,n)
ALUNO
60
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
31
61
d1
d3
d2
d1d1
d3d3
d2d2
p1,d1p1,d1p1,d1
p4,t2p4,t2p4,t2
p2,d1p2,d1p2,d1
p5,d3p5,d3p5,d3p6
p3
p1
p4
p2
p5p6p6
p3p3
p1p1
p4p4
p2p2
p5p5
d2
�� Entidade Entidade XX Relacionamento binRelacionamento binááriorio
Abordagem Entidade-Relacionamento
Na prNa práática, qual a diferentica, qual a diferençça entre Entidade e Relacionamentoa entre Entidade e Relacionamento????
ENTIDADE: “coisas” do mundo 
real sobre os quais se deseja 
armazenar determinadas 
características
ENTIDADEENTIDADE: : ““coisascoisas”” do mundo do mundo 
real sobre os quais se deseja real sobre os quais se deseja 
armazenar determinadas armazenar determinadas 
caractercaracteríísticassticas
RELACIONAMENTO: representa 
as regras do mundo real ou regras 
de negócio que deseja que sejam 
respeitadas no Banco de Dados
RELACIONAMENTORELACIONAMENTO: representa : representa 
as as regras do mundo realregras do mundo real ou ou regras regras 
de negde negóóciocio que deseja que sejam que deseja que sejam 
respeitadas no Banco de Dadosrespeitadas no Banco de Dados
62
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
32
63
�� Relacionamentos binRelacionamentos binááriosrios::
��Atributos de relacionamentoAtributos de relacionamento:: quando hquando háá necessidade de qualificar necessidade de qualificar 
ou caracterizar o relacionamentoou caracterizar o relacionamento
Abordagem Entidade-Relacionamento
data1
data1
data2
data3a6
a3
a4
a5
a1 d1
d3
d2
d5
d6
64
�� Relacionamentos binRelacionamentos binááriosrios::
��Atributos de relacionamentoAtributos de relacionamento:: quando hquando háá necessidade de qualificar necessidade de qualificar 
ou caracterizar o relacionamentoou caracterizar o relacionamento
Abordagem Entidade-Relacionamento
33
65
�� Relacionamentos binRelacionamentos binááriosrios::
��Atributos de relacionamentoAtributos de relacionamento:: quando hquando háá necessidade de qualificarnecessidade de qualificar 
ou caracterizar o relacionamentoou caracterizar o relacionamento
Abordagem Entidade-Relacionamento
66
�� Relacionamentos binRelacionamentos bináários:rios:
Abordagem Entidade-Relacionamento
p1
p3
p2
m1,p1
m4,p2
m1,p1
m5,p3
Diagrama de ocorrências
m6
m3
m4
m5
m1 ,d1
,d2
,d1
,d1
????
34
67
�� Relacionamentos binRelacionamentos bináários:rios:
��Identificador de relacionamentoIdentificador de relacionamento: quando entre as mesmas : quando entre as mesmas 
ocorrências de entidade podem existir diversas ocorrências de ocorrências de entidade podem existir diversas ocorrências de 
relacionamentorelacionamento
Abordagem Entidade-Relacionamento
68
�� Relacionamentos binRelacionamentos bináários:rios:
Abordagem Entidade-Relacionamento
p1
p3
p2
m1,p1
m4,p2
m1,p1
m5,p3
Diagrama de ocorrências
m6
m3
m4
m5
m1 ,d1
,d2
,d1
,d1
????
35
69
�� Relacionamentos binRelacionamentos bináários:rios:
Abordagem Entidade-Relacionamento
Qual a diferenQual a diferençça ??a ?? Qual a informaQual a informaçção que quero guardar ??ão que quero guardar ??
70
Roteiro da Apresentação
� Introdução
� Porque informatizar adequadamente
� Sistema de Banco de Dados
� Importância da Modelagem
� Níveis de Abstração
� Projeto de Banco de Dados
� Conceitual
� Lógico
� Físico
� Abordagem Entidade-Relacionamento
� Entidade
� Relacionamento binário
� Auto-relacionamento, Papel no relacionamento e Nomes dos 
relacionamentos
� Cardinalidade
� Diferença prática entre Entidade e Relacionamento
� Atributos no relacionamento e Identificador de relacionamento 
� Exercícios
36
71
Exercício 1 – Modelagem ER - Curso profissionalizante
Uma escola oferece uma série de cursos profissionalizantes. Esses 
cursos ocorrem de manhã e à noite, todos os anos, e têm a duração 
de 1 semestre cada curso. Cada curso é caracterizado por um 
código, nome, número de horas, número de vagas total, número de 
vagas ocupadas e nome do professor. A escola mantém igualmente 
um cadastro de todos os alunos, novos e antigos, inscritos ou não 
em cursos no semestre corrente. Todo aluno possui um número de 
matrícula único, nome, endereço e telefone. Em cada semestre um 
aluno pode se inscrever em 1 ou mais cursos. No início de cada 
semestre, após o encerramento do período de inscrições, a escola 
cancela todos os cursos que não possuem, pelo menos, 20 alunos. 
Contudo, durante o semestre, a escola deseja guardar informações 
relativas aos cursos, mesmo os cancelados. Alunos também podem 
cancelar suas inscrições em 1 ou mais cursos nos quais se inscreveu. 
Tal como para cursos, a escola deseja manter igualmente 
informações sobre todas as inscrições, ainda que canceladas. Um 
curso pode ser cadastrado sem estar associado a nenhum aluno.
72
Exercício 2 - Hotel
Um Hotel, mantém as seguintes informações sobre seus clientes: o nome, 
endereço, telefone, e-mail e um código único. Dos empregados guarda-se a sua 
matrícula (única), nome, CPF, um endereço e um ou mais telefones. Todo 
empregado possui, pelo menos, uma especialidade e uma especialidade poderá
estar associada a vários empregado ou a nenhum. Cada especialidade possui 
um código único, o nome da especialidade, o nome da instituição onde foi 
concluída e a data de conclusão. Um cliente, ao se hospedar no hotel, ocupa 
um ou mais quartos disponíveis. De cada quarto armazena-se um código 
único, o preço da diária e o seu tipo (solteiro Standard, solteiro luxo, casal 
Standard, casal luxo, etc.). Um quarto pode ser cadastrado sem estar 
vinculado a nenhum cliente; entretanto, um quarto pode ser alugado por 
vários clientes, inclusive o mesmo, naturalmente que em datas distintas. 
Sempre que um quarto for ocupado por um cliente deve-se guardar, 
permanentemente, ainda, a data/hora de entrada e saída e, ainda, o valor de 
desconto, se for o caso. Um empregado pode atender vários clientes ou 
nenhum. Todo cliente é atendido pelo menos por um empregado. Crie um 
DER de modo que seja possível identificar somente os Clientes, somente os 
Funcionários, somente as especialidades, as especialidades de um funcionário, 
todos quartos já alugados por um cliente e os empregados que atenderam 
determinado cliente.

Continue navegando