Buscar

aula_20-21_bd_IESB_2013_1_sul_2(1)(1)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
11
Disciplina Banco de Dados (BD)Disciplina Banco de Dados (BD)
2020ªª -- 2121ªª Aulas Aulas -- TransformaTransformaçção entre modelosão entre modelos2013/1 2013/1 -- CCON4A CCON4A -- ENGN6CENGN6C
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
FEVEREIRO
MARÇO
ABRIL
MAIO
JUNHO
JULHO
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
1212
Banco de Dados
Formem as equipes para o 2Formem as equipes para o 2°° TrabalhoTrabalho
7
13
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
14
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
8
15
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
16
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:
9
17
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
EmpregadoCliente
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)
18
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
10
19
Transformação de DER para Relacional
Modelo conceitual Modelo lógico
Esquema relacional
Filial (???, ???)
Cliente (???, ???)
Pes_Fis (???, ???)
Pes_Jur (???, ???)
??? referencia ???)
Esquema relacional
Filial (???, ???)
Cliente (???, ???)
Pes_Fis (???, ???)
Pes_Jur (???, ???)
??? referencia ???)
Esquema relacional
Empregado (???, ???)
Dependente (???, ???)
Telefone (???, ???)
??? referencia ???)
Esquema relacional
Empregado (???, ???)
Dependente (???, ???)
Telefone (???, ???)
??? referencia ???)
???
???
20
Transformação de DER para Relacional
Modelo lógico
Esquema relacional
Filial (???, ???)
Cliente (???, ???)
Pes_Fis (???, ???)
Pes_Jur (???, ???)
??? referencia ???)
Esquema relacional
Filial (???, ???)
Cliente (???, ???)
Pes_Fis (???, ???)
Pes_Jur (???, ???)
??? referencia ???)
Modelo conceitual
???
� Princípios da transformação:
� Tradução inicial de entidades e respectivos atributos
� Tradução de relacionamentos e respectivos atributos
� Tradução de generalizações / especializações
11
21
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
22
Modelo conceitual
Transformação de DER para Relacional
� Implementação de entidades:
� Entidade normalmente transforma-se em tabela:
� Atributo da entidade (“simples”): coluna da tabela
� Nomes: curtos, significativos, sem “brancos”, se 
preciso usar abreviaturas
� Abreviatura: usar mesmo princípio em todo BD
� Atributo identificador da entidade: chave primária
Pessoa (CodigoPess, Nome, Endereco, 
DataAdm, DataNasc)
Modelo lógico
12
23
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
24
Modelo lógico
(CodCartao, DataExp, CodCorrent)(CodCartao, DataExp
Transformação de DER para Relacional
� Implementação de relacionamentos (1:1) : 
� uma entidade com participação opcional e outra obrigatória
(CodCorrent, Nome, CodCartao, DataExp)
Modelo conceitual
(CodCorrent, Nome)
CodCorrent referencia Correntista
����
Correntista
Cartao
Correntista
Qual usar 
preferencialmente ??
13
25
Modelo lógico
(IdentM, Data, Regime)
(IdentH, Nome)
Transformação de DER para Relacional
� Implementação de relacionamentos (1:1) : 
� ambas entidades com participação opcional
Modelo conceitual
(IdentM, Nome, IdentH, Data, Regime)
(IdentH, Nome)
IdentH referencia Homem
(IdentM, IdentH, Data, Regime)
IdentH referencia Homem
(IdentM, Nome)
IdentM referencia Mulher
����
Homem
Mulher
Homem
Casamento
Mulher
Qual usar 
preferencialmente ??
26
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (1:1) : 
� ambas entidades com participação obrigatória
Modelo conceitual
Correntista (CodCorrent, Nome, CodCartao, DataExp)
14
27
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (1:1) : 
� ambas entidades com participação obrigatória
(CodConf, Sequencia, Nome, DataInst, LocalCom)
Modelo conceitual
Conferencia
28
Transformação de DER para Relacional
� Implementação de relacionamentos (1:1) - RESUMO
Tipo de 
relacionamento
Tabela 
própria
Adição de 
Coluna
Fusão de 
Tabelas
±±±± � X
X ±±±± �
X X �
Relacionamentos 1:1
Não usarX
Pode ser usada±±±±
Alternativa preferida����
15
29
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) : 
� alternativa preferida: adição de colunas
Funcionario
XXXX referencia Departamento
Modelo conceitual
Departamento
Funcionario
CodFun referencia Funcionario
Locacao
IdDepartamento referencia Departamento
����
(CodFun, Nome, XXXX)
(IdDepto, Nome)
(CodFun, Nome)
(CodFun, IdDepartamento)
Departamento (IdDepartamento, Nome)
Qual usar 
preferencialmente ??
30
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) : 
� alternativa preferida: adição de colunas
Modelo lógico
Funcionario
XXXX referencia Departamento
Departamento ����
(CodFun, Nome, XXXX)
(IdDepto, Nome)
Modelo conceitual
(D1, X)
(D2, Y)
(D3, Z)
(D4, T)
(F1, A, D1)
(F2, B, D1)
(F3, C, D3)
(F4, D, D4)
(F5, E, D4)
(F6, F, D4)
16
31
Modelo lógico
Funcionario
Departamento
(CodFun, Nome)
(IdDepto, Nome, CodFun)
CodFun referencia Funcionario
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) : 
� alternativa preferida: adição de colunas
Modelo conceitual
(D1, X, F1)
(D1, X, F2)
(D1, X, F3)
(D1, X, F20)
(F1, A)
(F2, B)
(F3, C)
(F4, D)
(F5, E)
(F6, F)
32
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) : 
� alternativa preferida: adição de colunas
Financeira
CodFin referencia Financeira
Modelo conceitual
Venda
Financeira
CodFin referencia Financeira
Venda
Financiamento
IdVend referencia Venda
����
(CodFin, Nome)
(IdVend, Data, CodFin, NumParc, TxJuros)
(CodFin, Nome)
(IdVend, Data)
(IdVend, CodFin, NParc, TxJuros)
Qual usar 
preferencialmente ??
17
33
Modelo lógico
Transformação de DER para Relacional
� Implementação de entidades com relacionamento identificador
(CodigoEmp, NumSeq, Nome, DataNasc)
Modelo conceitual
(CodigoEmp, Nome)
Dependente
Empregado
CodigoEmp referencia Empregado
34
Modelo lógico
NumEmpresaNumEmpresa, Nome), Nome)((CodGrupoCodGrupo, , NumEmpresaNumEmpresa, Nome), Nome)
Transformação de DER para Relacional
� Implementação de entidades com relacionamento identificador
Modelo conceitual
GRUPO
(1,1)
EMPRESA
Nome
(0,n)
(1,1)
EMPREGADO
(0,n)
Nome
Código
Número da
Empresa
Número do
Empregado
(1, 1) (0, n)
Número
sequencia Nome
Data
Nascimento
DEPENDENTE
Nome
GrupoGrupo
EmpresaEmpresa
EmpregadoEmpregado
DependenteDependente
((CodGrupoCodGrupo, Nome), Nome)
((CodGrupoCodGrupo, , NumEmpresaNumEmpresa, , NumEmpregadoNumEmpregado, Nome), Nome)
((CodGrupoCodGrupo, , NumEmpresaNumEmpresa, , NumEmpregadoNumEmpregado, , NumSeqNumSeq, Nome, , Nome, DataNascDataNasc))
NumEmpregadoNumEmpregado, Nome), Nome)
NumSeqNumSeq, Nome, , Nome, DataNascDataNasc))
18
35
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) : 
� alternativa preferida: adição de colunasModelo conceitual
Edificio
CodigoEd referencia Edificio
Apartamento
(CodigoEd, Endereco)
(CodigoEd, NumAp, AreaAp)
36
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) - RESUMO
Não usarX
Pode ser usada±±±±
Alternativa preferida����
Tipo de 
relacionamento
Tabela 
própria
Adição de 
Coluna
Fusão de 
Tabelas
±±±± � X
±±±± � X
X � X
X � X
Relacionamentos 1:N
19
37
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (N:N) : 
� criação de uma nova tabela
Aluno
CodAl referencia Aluno
Disciplina
Modelo conceitual
CodDisc referencia Disciplina
Frequencia
(CodAl, Nome)
(CodDisc, Nome, CargaHoraria)
(CodAl, CodDisc)
38
Transformação de DER para Relacional
� Implementação de relacionamentos (N:N) : 
� criação de uma nova tabela Modelo conceitual
A1,D1A1,D1
A1,D2A1,D2
A1A1
A3A3
A2A2
D1D1
D2D2
D3D3
D4D4
Aluno
CodAl referencia Aluno
Disciplina
CodDisc referencia Disciplina
Frequencia
(CodAl, Nome)
(CodDisc, Nome, CargaHoraria)
(CodAl, CodDisc)
????????
20
39
Modelo lógico
Transformação de DER para Relacional
� Implementação de relacionamentos (N:N) : 
� criação de uma nova tabela
Engenheiro
CodEng referencia Engenheiro
Projeto
Modelo conceitual
CodProj referencia Projeto
Atuacao
(CodEng, Nome)
(CodProj, Titulo)
(CodEng, CodProj, Funcao)
40
Transformação de DER para Relacional
� Implementação de relacionamentos (1:N) - RESUMO
Não usarX
Pode ser usada±±±±
Alternativa preferida����
Tipo de 
relacionamento
Tabela 
própria
Adição de 
Coluna
Fusão de 
Tabelas
� X X
� X X
� X X
Relacionamentos N:N
21
41
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
42
Transformação de DER para Relacional
� Relacionamentos de Grau maior que 02 (dois), Ex: Ternário
� relacionamento é transformado em entidade
� usa-se as regras de implementação de entidades e 
relacionamentos binários
Modelo conceitual
22
43
Transformação de DER para Relacional
� Relacionamentos de Grau maior que 02 (dois): 
Modelo lógico
Modelo conceitual
Produto
CodProd referencia Produto
Cidade
CodDistr referencia Distribuidor
Distribuidor
Distribuicao
CodCid referencia Cidade
(CodProd, Nome)
(CodCid, Nome)
(CodDistr, Nome)
(CodCid, CodDistr, CodProd, DataIni)
44
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
23
45
(2)
Modelo lógico
(1)
Transformação de DER para Relacional
� Implementação generalização / especialização (alternativas):
� (1) uso de uma tabela para cada entidade
� (2) uso de uma única tabela para toda hierarquia
(CodEmp, Nome, CIC, TipoEmp)
CodEmp referencia Empregado
Modelo conceitual
Motorista
Engenheiro
CodEmp referencia Empregado
Empregado
Empregado
(CodEmp, NumCartHab)
(CodEmp, CREA)
(CodEmp, Nome, CIC, TipoEmp,
NumCartHab, CREA)
Qual usar 
preferencialmente ??
46
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
24
47
�� Entidade: Entidade: 
�� Exemplo: Exemplo: MMéédicodico -- PacientePaciente -- MedicamentoMedicamento
�� ““Identificar os medicamentos prescritos pelos mIdentificar os medicamentos prescritos pelos méédicos a cada dicos a cada 
paciente e em que consulta foram receitadospaciente e em que consulta foram receitados””
Abordagem Entidade-Relacionamento
O médico MD1
prescreveu, ao paciente 
P2, qual medicamento ??? 
(MC1, MC2, MC3, todos ou 
nenhum ???)
Este modelo não responde
a pergunta formulada !!!
48
�� Entidade: Entidade: 
�� AssociativaAssociativa: : éé a redefinia redefiniçção de um relacionamento que passa a ser ão de um relacionamento que passa a ser 
tratado como se fosse, tambtratado como se fosse, tambéém, uma entidadem, uma entidade
�� Exemplo: Exemplo: MMéédicodico -- PacientePaciente -- MedicamentoMedicamento
�� ““Identificar os medicamentos prescritos pelos mIdentificar os medicamentos prescritos pelos méédicos a cada dicos a cada 
paciente e em que consulta foram receitadospaciente e em que consulta foram receitados””
Abordagem Entidade-Relacionamento
25
49
�� Entidade: Entidade: 
�� AssociativaAssociativa: : éé a redefinia redefiniçção de um relacionamento que passa a ser ão de um relacionamento que passa a ser 
tratado como se fosse, tambtratado como se fosse, tambéém, uma entidadem, uma entidade
Abordagem Entidade-Relacionamento
50
�� Entidade: Entidade: 
�� AssociativaAssociativa: : ““funcionamentofuncionamento””
Abordagem Entidade-Relacionamento
O médico MD1 prescreveu, ao paciente P2, qual medicamento ??? 
(MC1, MC2, MC3, todos ou nenhum ???)
MD1,P1
MD1,P2
MD1,P1, MC1
MD1,P2, MC3
MD1,P1, MC2
Este modelo responde a pergunta formulada !!!
26
51
�� Entidade: Entidade: 
�� AssociativaAssociativa: representa: representaççõesões
Abordagem Entidade-Relacionamento
52
Modelo lógico
�� Entidade AssociativaEntidade Associativa: : éé a redefinia redefiniçção de um relacionamento que passa a ser ão de um relacionamento que passa a ser 
tratado como se fosse, tambtratado como se fosse, tambéém, uma entidadem, uma entidade
Transformação de DER para Relacional
Paciente
Medico
Prescricao
Modelo conceitual
Remedio
Consulta
CodMed referencia Medico
CodPac referencia Paciente
CodMed, CodPac referencia Consulta
CodRem referencia Remedio
(CodPac, Nome, Endereco)
(CodMed, CRM, Nome)
(CodMed, CodPac, CodRem, Data, Quantidade)
(CodRem, NomeCom)
(CodMed, CodPac)
27
53
�� Entidade: Entidade: 
�� AssociativaAssociativa: : ““funcionamentofuncionamento””
Transformação de DER para Relacional
MD1,P1
MD1,P2
MD1,P1, MC1
MD1,P1, MC3
MD1,P1, MC2
Consulta
CodMed referencia Medico
CodPac referencia Paciente
(CodMed, CodPac) Prescricao
CodMed, CodPac referencia Consulta
CodRem referencia Remedio
(CodMed, CodPac, CodRem, Data, Quantidade)
54
Roteiro da Apresentação
� Introdução
� Projeto de Banco de Dados
� Transformação de DER para o modelo Relacional
� Princípios de transformação
� Transformação de entidades
� Transformação de relacionamento
� Transformação de relacionamento maior que dois
� Transformação de generalização / especialização
� Transformação de entidade associativa (agregação)
� Exercícios
28
55
Exercício 1
Modelo conceitual
p
MOTORISTA
DEPARTAMENTOLOTAÇÃO
DOMÍNIO
ENGENHEIRO
PARTICIPAÇÃO
PROJETO
(1, 1)(0, n)
CREA
(1, n) (0, n)
(0, n)(0, n)
Código
Nome Nome
Código
CIC
Tipo de
empregado
Código
EMPREGADO
Carteira de
Habilitação
Nome
PROCESSADOR
DE TEXTO
Código Nome
RAMO DA
ENGENHARIA
(0, n)
(1, 1)
Código Nome
Idioma
SECRETÁRIAImplementação 
modelo lógico
� ( 1 ) uma única 
tabela para toda 
hierarquia 
generalização/ 
especialização
� ( 2 ) uma tabela 
para cada 
entidade de 
generalização 
/especialização
56
Modelo lógico
Transformação de DER para Relacional
�� ImplementaImplementaçção generalizaão generalizaçção / especializaão / especializaçção:ão:
�� uma uma úúnica tabelanica tabela para toda hierarquia generalizapara toda hierarquia generalizaçção/ especializaão/ especializaççãoão
Empregado
CodDep referencia Departamento
CodRamo referencia Ramo
Departamento
Ramo
ProcText
Projeto
Dominio
CodEmp referencia Empregado
CodProc referencia ProcText
Participacao
CodEmp referencia Empregado
CodProj referencia Projeto
Modelo conceitual
(CodDep, Nome)
(CodRamo, Nome)
(CodProc, Nome)
(CodProj, Nome)
(CodEmp, CodProc)
(CodEmp, CodProj)
(CodEmp, Nome, CIC, TipoEmp, 
NumCartHab, Idioma, CREA, CodDep, CodRamo)
29
57
Transformação de DER para Relacional
� Implementação generalização / especialização:
� uma tabela para cada entidade de generalização / especialização
Modelo lógico
Empregado
CodDep referencia Departamento
Motorista
Engenheiro
Departamento
Ramo
ProcText
Dominio
CodEmp referencia Secretaria
CodProc referencia ProcText
Projeto
Participacao
CodEmp referencia Engenheiro
CodProj referencia Projeto
CodRamo referencia Ramo
Modelo conceitual
Secretaria
(CodEmp, Nome, CIC, Tipo, CodDep)
(CodEmp, NumCartHab)
(CodEmp, CREA
(CodDep, Nome)
(CodRamo, Nome)
(CodProc, Nome)
(CodEmp, CodProc)
(CodProj, Nome)
(CodEmp, CodProj)
(CodEmp, Idioma)
, CodRamo)
CodEmp referencia Empregado
CodEmp referencia Empregado
CodEmp referencia Empregado
58
Exercício 2
Modelo conceitual
Implementação 
modelo lógico
� ( 1 ) uma única 
tabela para toda 
hierarquia 
generalização/ 
especialização
� ( 2 ) uma tabela 
para cada 
entidade de 
generalização / 
especialização
30
59
Exercício 2 - Solução 1
� Implementação generalização / especialização:
�� uma uma úúnica tabelanica tabela para toda hierarquia generalizapara toda hierarquia generalizaçção/ especializaão/ especializaççãoão
Modelo lógico
Produto
CNPJ referencia Fabricante
Fabricante
Venda
B
C
(CodProd, NomeCom, Preco, TipoEmb, 
Qtde, TipoPerfume, Tarja, Fórmula, CNPJ)
(CNPJ, Nome, Endereco)
(NumeroNota, Data, NomeCli)
(CodProd, NumeroNota)
ReceitaMedica (CRM, Numero, Data)
(CodProd, NumeroNota)
CodProd referencia Produto
NumeroNota referencia Venda
CodProd referencia Produto
NumeroNota referencia Venda
Modelo conceitual
D (CodProd, NumeroNota, CRM, Numero)
CodProd, NumeroNota referencia C
CRM, Numero referencia ReceitaMedica
60
Transformação de DER para Relacional
� Implementação generalização / especialização:
� uma tabela para cada entidade de generalização / especialização
Modelo lógico
Produto
CNPJ referencia Fabricante
Perfumaria
Fabricante
Venda
B
C
Medicamento
(CodProd, Nome, Preco, Tipo, Qtde, CNPJ)
(CodProd, Tipo)
(CNPJ, Nome, Endereco)
(NumeroNota, Data, NomeCli)
(CodProd, NumeroNota)
ReceitaMedica (CRM, Numero, Data)
(CodProd, NumeroNota)
(CodProd, Tarja, Formula)
CodProd referencia Produto
CodProd referencia Perfumaria
NumeroNota referencia Venda
CodProd referencia Medicamento
NumeroNota referencia Venda
CodProd referencia Produto
Modelo conceitual
D (CodProd, NumeroNota, CRM, Numero)
CodProd, NumeroNota referencia C
CRM, Numero referencia ReceitaMedica

Continue navegando