#BancoDeDados
Prof. Natanael Simões
facebook.com/natanaelsimoes
Modelo LógicoNovo modelo e conceitos de chave
@natanaelsimoes
steamcommunity.com/id/natanaesimoes
Objetivo
• Iniciar a criação do modelo lógico• Compreender conceitos de chave primária e estrangeira
•Modelo lógico: o que mudou?• Chave primária• Chave estrangeira
Conteúdo programático
Modelo lógico: o que mudou?
Modelo lógico: o que mudou?
Nome da entidade
Atributo chave
Atributos simples
• Não use espaços• Não use preposições• Não use caracteres
especiais (@, #, ?)• Não use caracteres
“brasileiros” (ç, ã, é)
Modelo lógico: o que mudou?• Entidade => Tabela• Atributos => Campo ou Coluna• Atributo chave => Chave primária
CPF NOME ENDERECO TELEFONE000.000.000-00 José Rua ali 23 0000-0000111.111.111-00 Maria Rua lá 30 1111-1111222.222.222-00 Roberto Rua perto 1 2222-2222333.333.333-00 Olivia Rua longe 999 3333-3333
Campos ou Colunas
Linhas
Chave primária
CPF NOME ENDERECO TELEFONE000.000.000-00 José Rua ali 23 0000-0000111.111.111-00 José Rua lá 30 1111-1111222.222.222-00 Roberto Rua perto 1 2222-2222333.333.333-00 Olivia Rua longe 999 3333-3333
• Atributo que distingue uma linha das demais dentro da tabela
CLIENTE
Chave primária
• E se repetir?? Ocorre restrição de integridade!
Chave estrangeira
• Cria o elo (físico) entre as tabelas
CPF NOME000.000.000-00 José111.111.111-00 José222.222.222-00 Roberto333.333.333-00 Olivia
NUMERO DATA CLIENTE_CPF1 01/01/2014 222.222.222-002 01/01/2014 000.000.000-003 10/01/2014 111.111.111-004 15/01/2014 333.333.333-005 01/02/2014 111.111.111-00
CLIENTE ORDEM_SERVICO
Chave candidata
• Poderia ser uma chave primária, mas não é...
MATRICULA NOME CPF1456 Juscelino 444.444.444-002985 André 555.555.555-003533 Histoichicow 666.666.666-004156 Paula 777.777.777-005837 Ana 888.888.888-00
TECNICO
Cardinalidade mínima e máxima
(0,N)(1,1)
(0,N)(1,1)
O problema dos relacionamentos N x N
O problema dos relacionamentos N x N
Como saber quais empregados trabalham em determinado
projeto?
O problema dos relacionamentos N x N
(1,1)
(0,N)
(0,N)(1,1)
(0,N)
(1,N)
(0,N)(1,N)