• Nenhum resultado encontrado

Tecnologias e Linguagens para Banco de Dados I. Tópicos: Modelo Lógico-Relacional. Modelagem Lógica

N/A
N/A
Protected

Academic year: 2022

Share "Tecnologias e Linguagens para Banco de Dados I. Tópicos: Modelo Lógico-Relacional. Modelagem Lógica"

Copied!
9
0
0

Texto

(1)

Prof. Gilberto Braga de Oliveira Prof. Gilberto Braga de Oliveira

Tecnologias e Linguagens Tecnologias e Linguagens

para Banco

para Banco de Dados I de Dados I

Modelagem Lógica Modelagem Lógica

22

Tópicos:

Tópicos:

Modelo Lógico-Modelo Lógico-RelacionalRelacional Chaves e ÍndicesChaves e Índices

Conceito de chave no modelo relacionalConceito de chave no modelo relacional

Regras de integridade do modelo relacionalRegras de integridade do modelo relacional

Características do modelo relacionalCaracterísticas do modelo relacional

Derivação do Modelo EntidadeDerivação do Modelo Entidade--Relacionamento para o Relacionamento para o Modelo Lógico

Modelo Lógico--RelacionalRelacional

Efetivação lógica dos relacionamentosEfetivação lógica dos relacionamentos A expressão do relacionamentoA expressão do relacionamento

Valor NuloValor Nulo Exercício: EmpresaExercício: Empresa

3 3

Modelo Modelo Lógico

Lógico- -Relacional Relacional

Processo que visa criar Processo que visa criar vinculos lógicos vinculos lógicos entre entre os

os elementos internos elementos internos e e externos externos do banco de do banco de dados

dados

Vínculos lógicos:Vínculos lógicos:

Chaves e índicesChaves e índices

Elementos internos:Elementos internos:

Entidades e Relacionamentos que se tornarão tabelas;Entidades e Relacionamentos que se tornarão tabelas;

Elementos externosElementos externos

Sistemas e pessoas que precisarão acessar os registros das Sistemas e pessoas que precisarão acessar os registros das tabelas do banco de dados

tabelas do banco de dados

(2)

4 4

Modelo Lógico Modelo Lógico- -

Relacional Relacional

Chaves e Índices: Chaves e Índices:

Chave: item de busca, campo Chave: item de busca, campo que será que será empregado nas consultas à base de dados.

empregado nas consultas à base de dados.

Índice: Recurso físico, otimiza Índice: Recurso físico, otimiza a recuperação a recuperação de registros através de métodos

de registros através de métodos de acesso; de acesso;

Uma chave Uma chave é é um índice mas um índice não um índice mas um índice não é necessariamente uma chave.

é necessariamente uma chave.

55

Conceito de chave no Conceito de chave no

modelo relacional:

modelo relacional:

Chave Candidata Chave Candidata

Campo candidato a chave primária.Campo candidato a chave primária.

Chave Chave Primária Primária

AtributoAtributode uma tabela (entidade ou relacionamento de uma tabela (entidade ou relacionamento com atributos) que

com atributos) queidentifica um registro de maneira identifica um registro de maneira única.

única.

Chave Chave Estrangeira Estrangeira

CampoCampoeloeloentre uma tabelaentre uma tabelae outrae outra..

Chave Secundária Chave Secundária

Define duas chaves primárias na mesma tabela, Define duas chaves primárias na mesma tabela, usada para otimizar o acesso aos registros.

usada para otimizar o acesso aos registros.

6 6

Exemplo de Chave Exemplo de Chave

Candidata Candidata

567.890.123 567.890.123--4545 Rua Cinco, 03

Rua Cinco, 03 João da Silva

João da Silva 005

005

456.789.012 456.789.012--3434 Rua Dois, 05

Rua Dois, 05 João Barbosa

João Barbosa 004

004

345.678.901 345.678.901--2323 Rua Três, 04

Rua Três, 04 Maria Costa

Maria Costa 003003

234.567.890 234.567.890--1212 Rua Dois, 03

Rua Dois, 03 Maria dos Santos

Maria dos Santos 002

002

123.456.789 123.456.789--9090 Rua Hum, 02

Rua Hum, 02 João da Silva

João da Silva 001

001

#CPF#CPF Endereco

Endereco NomeNome

*CodCliente

*CodCliente

(3)

7 7

Exemplo 2 de Chave Exemplo 2 de Chave

Candidata Candidata

567.890.123 567.890.123--4545 Rua Dez, 11

Rua Dez, 11 Joana da Silva

Joana da Silva 01250125--22

456.789.012 456.789.012--3434 Rua Oito, 07

Rua Oito, 07 Joana Barbosa

Joana Barbosa 0988

0988--99

345.678.901 345.678.901--2323 Rua Nove, 10

Rua Nove, 10 Mário Costa

Mário Costa 0456

0456--77

234.567.890 234.567.890--1212 Rua Oito, 09

Rua Oito, 09 Mário dos Santos

Mário dos Santos 0315

0315--44

123.456.789 123.456.789--9090 Rua Seis, 07

Rua Seis, 07 Joana da Silva

Joana da Silva 0218

0218--22

#CPF#CPF Endereco

Endereco Médico

Médico

*#CRM

*#CRM

88

Exemplo de Chave Primária Exemplo de Chave Primária

(Primary ( Primary Key): Key):

1254 1254--85888588 Rua Cinco, 03

Rua Cinco, 03 João da Silva

João da Silva 005

005

56845684--65986598 Rua Dois, 05

Rua Dois, 05 João Barbosa

João Barbosa 004004

4587 4587--98659865 Rua Três, 04

Rua Três, 04 Maria Costa

Maria Costa 003

003

3256 3256--98569856 Rua Dois, 03

Rua Dois, 03 Maria dos Santos

Maria dos Santos 002

002

12341234--56785678 Rua Hum, 02

Rua Hum, 02 João da Silva

João da Silva 001001

Telefone Telefone Endereco

Endereco Nome

Nome

*CodCliente

*CodCliente

9 9

Exemplo Chave Estrangeira Exemplo Chave Estrangeira

(

(Foreign Foreign Key) Key)

4747 35 35 21 21 12 12 0707

*Cod*Cod

13:00 13:00 21/07/07 21/07/07 07890789--00

11:00 11:00 19/07/07 19/07/07 0234

0234--55

15:00 15:00 13/07/07 13/07/07 0345

0345--66

09:00 09:00 08/07/07 08/07/07 0234

0234--55

08:00 08:00 05/07/07 05/07/07 03450345--66

HrCons HrCons DtCons

DtCons CRMCRM

Consulta Consulta

Ortopedista Ortopedista AnaAna

07890789--00

Cardiologista Cardiologista Josefa

Josefa 0456 0456--77

Pediatra Pediatra Joana

Joana 0345 0345--66

Clínico Clínico Mário

Mário 02340234--55

Cardiologista Cardiologista Joana

Joana 0123-0123-44

Especialidade Especialidade Médico

Médico

*CRM

*CRM

Medico Medico

(4)

10 10

Exemplo de Chave Exemplo de Chave

Secundária Secundária

12 12 012 012

003 003

6 6 012

012 002

002

9 9 012

012 001

001

7 7 011 011

002 002

25 25 011

011 001

001

Quantidade Quantidade

*CodPedido

*CodPedido

*CodProduto

*CodProduto

1111

Regras de integridade do Regras de integridade do

Modelo Relacional Modelo Relacional

De integridade de identidade De integridade de identidade

Chave primária nãoChave primária nãopode conter valor nulo pode conter valor nulo ouou repetido

repetido

De integridade referêncial De integridade referêncial

Chave estrangeiraChave estrangeiradeve ter valor igualdeve ter valor igualao da ao da chave primária

chave primária(relacionada) (relacionada) ououigualiguala nuloa nulo.. Chave estrangeiraChave estrangeiraNÃO poderá ter um valor NÃO poderá ter um valor

diferente

diferenteda da chave primáriachave primáriarelacionada relacionada ee diferente

diferentede de nulonulo..

12 12

Características do Modelo Características do Modelo

Relacional Relacional

Uma tabela é acessível por qualquer campo Uma tabela é acessível por qualquer campo independente dele ser chave ou não.

independente dele ser chave ou não.

O relacionamento entre as tabelas não existe O relacionamento entre as tabelas não existe fisicamente ele é apenas lógico representado por fisicamente ele é apenas lógico representado por chaves.

chaves.

Uso de linguagens auto Uso de linguagens auto- -contidas e não contidas e não procedurais

procedurais

Ambiente relacional otimiza a forma de Ambiente relacional otimiza a forma de recuperar os dados.

recuperar os dados.

(5)

13 13

Derivação

Derivação do MER do MER para o para o Modelo Lógico

Modelo Lógico- -Relacional Relacional Mapeamento dos relacionamentos Mapeamento dos relacionamentos

Relacionamento Relacionamento 1:N 1:N

Tabela N Tabela N carrega campo de mesmo carrega campo de mesmo nome

nome da da chave primária chave primária da da tabela 1 tabela 1 e e que será

que será chave estrangeira chave estrangeira em em N N . .

Navegação incorporada: Via chave Navegação incorporada: Via chave estrangeira;

estrangeira;

1414

Derivação do

Derivação do MER MER para o para o Modelo

Modelo Lógico Lógico- -Relacional Relacional

Relacionamento N:N Relacionamento N:N

O relacionamento tornaO relacionamento torna--se uma tabela com se uma tabela com atributos (se houver) e identificadores das atributos (se houver) e identificadores das tabelas relacionadas.

tabelas relacionadas.

Navegação disjunta: Não modifica os registros Navegação disjunta: Não modifica os registros pré-pré-existentes. (N:N)existentes. (N:N)

Relacionamento 1:1 Relacionamento 1:1

Tabela especializada recebe a chave primária da Tabela especializada recebe a chave primária da tabela generalista.

tabela generalista.

Generalização/EspecializaçãoGeneralização/Especialização

Os subconjuntos tornam-Os subconjuntos tornam-se tabelas carregando o se tabelas carregando o identificador do conjunto ao qual pertencem identificador do conjunto ao qual pertencem

Prof. Gilberto Braga de Oliveira Prof. Gilberto Braga de Oliveira

Tecnologias e Linguagens Tecnologias e Linguagens

para Banco de Dados I para Banco de Dados I

Exercício Exercício

Modelo de Negócio: Empresa X

Modelo de Negócio: Empresa X

(6)

16 16

Exemplo: Empresa Exemplo: Empresa

Os funcionáriosOs funcionáriossão registrados pela matrículasão registrados pela matrícula,,nomenome,, telefone1

telefone1, , telefone2,telefone2,pelo departamento pelo departamento ondeondetrabalha, por trabalha, por um

um projetoprojetoque ele pode participar e pela que ele pode participar e pela datadatae prazoe prazode de alocação do funcionário no projeto;

alocação do funcionário no projeto;

OsOsvendedoresvendedoressão definidos pelo são definidos pelo percentual depercentual de comissão

comissão,,salário fixosalário fixoe o e o salário total salário total a receber que é o a receber que é o resultado da fórmula:

resultado da fórmula:

SalarioTotalSalarioTotal= (1 + = (1 + ComissaoComissao/100) * /100) * SalarioFixoSalarioFixo..

Cada vendedorCada vendedor“deve” “deve” serserum e somente umum e somente umfuncionáriofuncionário da empresa, enquanto um

da empresa, enquanto um funcionáriofuncionário“pode” “pode” serserum e um e somente um

somente umvendedor.vendedor.

1717

Modelagem

Modelagem Conceitual Conceitual

com Funcionario 1:1 com Funcionario 1:1 Total

Total Comissao

Comissao SalarioFixo SalarioFixo SalarioTotal SalarioTotal Vendedor

Vendedor

com

comVendedor 1:1Vendedor 1:1 Parcial Parcial Matricula

Matricula NomeNome Departamento Departamento Projeto Projeto DataAlocacao DataAlocacao PrazoAlocacao PrazoAlocacao Funcionario

Funcionario

Relacionamentos Relacionamentos Atributos

Atributos Entidade

Entidade

18 18

MER MER Exemplo

Exemplo Empresa Empresa

Funcionario

É

Vendedor 1

1 1 1

1 1

(7)

19 19

Modelagem lógica Modelagem lógica

1.

1. Procura por chaves candidatas Procura por chaves candidatas

Analisar cada um dos atributos das entidades e do Analisar cada um dos atributos das entidades e do relacionamento

relacionamento

Identificar o atributo que contempla a regra de Identificar o atributo que contempla a regra de integridade de identidade

integridade de identidade

O campo repete? Pode ser nulo?O campo repete? Pode ser nulo?

Se a resposta for Se a resposta for NÃONÃOpara as duas questões o para as duas questões o campo é chave candidata

campo é chave candidata

Marcar o campo identificado com Marcar o campo identificado com ##

2020

Modelagem lógica Modelagem lógica

com Funcionario 1:1 com Funcionario 1:1 Total

Total Comissao

Comissao SalarioFixo SalarioFixo AreaAtuacao AreaAtuacao Vendedor

Vendedor

comcomVendedor 1:1Vendedor 1:1 Parcial

Parcial

#Matricula

#Matricula Nome Nome Departamento Departamento Projeto Projeto Data Data Prazo Prazo Funcionario

Funcionario

Relacionamentos Relacionamentos Atributos

Atributos Entidade

Entidade

21 21

Modelagem lógica Modelagem lógica

2.

2. Promover Promover chaves chaves candidatas candidatas a a chaves primárias chaves primárias ou criá

ou criá- -las se necessário las se necessário

Toda tabela precisa ter chave primária ou chave Toda tabela precisa ter chave primária ou chave secundária

secundária

Se a tabela tem chave candidataSe a tabela tem chave candidata

Analisar tamanho e tipo de dados das chaves Analisar tamanho e tipo de dados das chaves candidatas

candidatas

Com o menor número de dígitos possível (Máximo 7 neste Com o menor número de dígitos possível (Máximo 7 neste curso)

curso)

Preferencialmente numéricoPreferencialmente numérico

SenãoSenão

Criar um campo artificial e marcar com Criar um campo artificial e marcar com **

(8)

22 22

Modelagem

Modelagem lógica lógica

com Funcionario 1:1 com Funcionario 1:1 Total

Total

*CodVendedor

*CodVendedor Comissao Comissao SalarioFixo SalarioFixo AreaAtuacao AreaAtuacao Vendedor

Vendedor

com

comVendedor 1:1Vendedor 1:1 Parcial

Parcial

*#Matricula

*#Matricula Nome Nome Departamento Departamento Projeto Projeto DataData Prazo Prazo Funcionario

Funcionario

Relacionamentos Relacionamentos Atributos

Atributos Entidade

Entidade

2323

Modelagem lógica Modelagem lógica

3.

3.

Definir Definir chaves estrangeiras chaves estrangeiras

Observar o grau Observar o grau dosdosrelacionamentosrelacionamentos Observar a regra para a criação de chave Observar a regra para a criação de chave

estrangeira de acordo com o grau:

estrangeira de acordo com o grau:

1:1 Chave primária da 1:1 Chave primária da entidade especializadaentidade especializadaé a é a mesma da

mesma da generalistageneralista

1:N 1:N Lado NLado Nrecebe campo chave estrangeira de mesmo recebe campo chave estrangeira de mesmo nome da chave primária do

nome da chave primária do lado 1lado 1

N:N N:N CrieCrieumaumaterceira tabela com as chaves terceira tabela com as chaves estrangeiras, estrangeiras, a partir das chaves primárias das tabelas relacionadas.

a partir das chaves primárias das tabelas relacionadas.

24 24

Modelo Modelo Lógico

Lógico- -Relacional Relacional

com Funcionario 1:1 com Funcionario 1:1 Total

Total

*Matricula

*Matricula Comissao Comissao SalarioFixo SalarioFixo AreaAtuacao AreaAtuacao Vendedor

Vendedor

com

comVendedor 1:1Vendedor 1:1 Parcial

Parcial

*#Matricula

*#Matricula NomeNome Departamento Departamento Projeto Projeto Data Data Prazo Prazo Funcionario

Funcionario

Relacionamentos Relacionamentos Atributos

Atributos Entidade

Entidade

(9)

25 25

Tabelas Tabelas

9090 21/05/08 21/05/08 Intranet

Intranet Vendas Vendas 89988998--99899989 56785678--90129012 Mário

Mário 045045

3030 17/05/08 17/05/08 Reciclagem Reciclagem Produção Produção 79977997--88908890 56785678--90129012 Joana

Joana 039039

60 60 21/06/08 21/06/08 Intranet

Intranet Vendas Vendas 8899

8899--00120012 3645

3645--67896789 Pedrina Pedrina 032 032

21/06/08 21/06/08 17/05/08 17/05/08 21/05/08 21/05/08 DtAlDtAl

60 60 90 90 30 30 PrazoAl PrazoAl

Reciclagem Reciclagem Produção Produção 7788

7788--99019901 3645

3645--67896789 Pedro

Pedro 021 021

Reciclagem Reciclagem Vendas

Vendas 8901

8901--23452345 1234

1234--56785678 Marisa Marisa 019 019

Reciclagem Reciclagem Produção Produção 7890

7890--12341234 1234

1234--56785678 João

João 001 001

Projeto Projeto Depto Depto Tel2Tel2 Tel1Tel1 NomeNome MatMat

805 805 700 700 15

15 045 045

660 660 600 600 10

10 032 032

960 960 800 800 20

20 019 019

SalTotal SalTotal SalFixo SalFixo Comissao Comissao Mat

Mat Vendedor Funcionário

Referências

Documentos relacionados

Se por alguma razão você não puder comparecer ao médico para fazer uso da medicação na data marcada, o ERANFUL ® pode ser administrado 3 dias antes ou 3 dias depois desta data.

foi conduzido um experimento, em delineamento de blocos ao acaso, para estudar a produção de mudas em dois tamanhos de tubetes: grande (TG) e médio (TM), e duas

de calçados para o Brasil, em setembro de 2009, o Governo autorizou a cobrança de uma taxa “antidumping” provisória de US$ 12,47, por um período de seis meses, para cada par

As Forças Radiantes da Luz Divina, também chamadas Formas As Forças Radiantes da Luz Divina, também chamadas Formas Angélicas, não têm gênero na mais densa

Léteznek egyéb jógaváltozatok is, úgymint mantra jóga, kundalini jóga, Iyengar jóga, krija jóga, integrál jóga, nitja jóga, maha jóga, purna jóga, anahata jóga, tantra

Valores médios e desvios padrões da idade e do tempo de doença no início do acompanhamento, do tempo de acompanhamento e das medidas antes e após o

a) Subsistema para o Desenvolvimento do Turismo, adiante designado por SIDET; b) Subsistema para o Desenvolvimento Local, adiante designado por SIDEL; c) Subsistema de

O Irmão Licinio dedica-se mais que tudo a jovens em idade escolar, e procura criar no centro um local de apoio após a escola – onde recebem alimentação, apoio ao estudo,