Módulo 13 – Técnicas de Modelação de Dados
Programação e Sistemas
de Informação
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Imagine que de cada vez que quer
actualizar a sua lista de contactos utiliza
um post-it
2
… muito prático, não é???
Bem, na verdade… Não …
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Porquê??? Ainda perguntam….
n  Ora bem apesar de ser “old fashion”,
imagine o que seria ao fim de algum tempo.
3
Pode agora jogar ao jogo: onde está o seu
contacto, baseado no clássico, onde está o
Wally ? ou o Joaquim? ou a Maria? ou a Cátia?
por falar nisso, onde é que eles estão?? Eu sei
lá, sei lá ….
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Como poderia organizar melhor esta
informação?
n  Através de uma Base de Dados
n  Mas, antes deve:
l  Saber os dados que quer guardar
l  Categorizá-los 4
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Aqui estão alguns exemplos da informação
guardada para cada um dos contactos.
5
Categorize a informação comum atribuindo-lhe um
nome (etiqueta) genérico….
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Foi dada uma dica no slide anterior… ai sim? Onde?
Onde?
n  Para os mais distraídos: Interesses… Agora é com
vocês…
6
• Primeiro Nome
Último Nome
Aniversário
Profissão
Estado Civil
Cidade
País
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Vejamos agora os dados de uma forma diferente…
n  Rasgue cada um dos dados de um post-it e coloque-os
horizontalmente
7
n  Agora, corte outro post-it com as categorias e fica algo como:
n  Isto faz lembrar a apresentação dos dados noutro programa. Qual?
n  No… No… está mesmo debaixo da língua… ai… no…EXCEL
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  É a mesma informação que tinha, mas disposta em linhas e colunas:
8
n  Ou seja, aquilo a que se pode chamar de… dados dispostos (e bem)
em linha e colunas… lembram-se… como no Excel, em …
TABELAS
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Antes de continuar a falar de tabelas, é bom relembrar que elas são
parte integrante das:
9
n  BD (não confundir com Banda Desenhada – Bases de Dados)
• De cada vez que:
§  Requisita um livro
§  Pesquisa online
§  Reserva bilhetes
§  Faz compras
§  ….
Lembre-se que está a ser utilizada uma BD
Módulo13–TécnicasdeModelaçãodeDados
Revisões – Bases de Dados
n  Onde pode encontrar Bases de Dados??? E para quê????
10
• … e estes são apenas alguns locais… existem muitos mais
Módulo13–TécnicasdeModelaçãodeDados
Tabelas
11
Módulo13–TécnicasdeModelaçãodeDados
Tabela – Regras de Elaboração
n  Não pode haver duas colunas com nome igual
n  Cada campo deve ser constituído por valores atómicos
n  Não deve haver campos vazios (o campo considerado
chave tem de ser obrigatoriamente preenchido)
n  Não pode haver registos duplicados
12
Módulo13–TécnicasdeModelaçãodeDados
Tabela - Exemplos
13
Num Num Ano Turma Nome
1
10 10º 9º E João Pedro
2
4 9º D Luís Miguel
3
10 11º F Ana Cristina
10 11º F Ana Cristina
5
5 10º 9º E Carla Sofia
Segundio as regras anteriores, encontre violações às regras de
elaboração de Tabelas na tabela que se segue...
Agora, e só para lançar a confusão, será que existem???
Módulo13–TécnicasdeModelaçãodeDados
Tabela – Terminologia Associada
14
Num Num Ano Turma Nome
1
10 10º 9º E João Pedro
2
4 9º D Luís Miguel
3
10 11º F Ana Cristina
10 11º F Ana Cristina
5
5 10º 9º E Carla Sofia
Aproveitando a tabela anterior tem-se:
• Campos – Unidade básica de informação, representada/
disposta em colonas (Nome, Num, Ano…)
• Registos –
Agrupamento de
campos ou itens,
tratados como uma
unidade. Dispostos
em linhas, por
exemplo,: Número 4,
9º Ano, Turma D,
Luís Miguel
• Tabela – Conjunto de Registos
Módulo13–TécnicasdeModelaçãodeDados
Tabela
n  São as ________ básicas onde são
___________ todos os dados numa ____
_______ relacional. São estruturas
____________.
15
estruturas
armazenados
bidimensionais
base
de dados
Módulo13–TécnicasdeModelaçãodeDados
Índices
16
Módulo13–TécnicasdeModelaçãodeDados
Índice
n  São estruturas de dados auxiliares que
visam minimizar o tempo de acesso a
registos em resposta a operações de
procura sobre determinados atributos
17
Módulo13–TécnicasdeModelaçãodeDados
Índices
18
Nome Morada Cod-Postal
João Silva Av. da liberdade nº 144 1100428
Carlos Lopes Av. da liberdade nº 124 1100428
Inês Freitas Av. Gago Coutinho nº 1478 8º Dto. 1200870
Sandro Pereira R. Gomes Sá Nº 321 10ºDto. 2568105
Filipa Pereira R. Gomes Sá Nº 321 10ºDto. 2568105
Cátia Castro R. Gomes Sá Nº 321 10ºDto. 2568105
Pedro Gonçalves R. Palmira Bastos Nº 23 2685266
Paulo Monte R. Palmira Bastos Nº 12 3º Esq. 2685266
André Couto R. Palmira Bastos Nº 54 1º Dto. 2685266
Luís Fonseca R. Palmira Bastos Nº 123 2685266
Ana Rita R. Palmira Bastos Nº 96 5º Ft. 2685266
Módulo13–TécnicasdeModelaçãodeDados
Chaves
19
Módulo13–TécnicasdeModelaçãodeDados
Chaves
n  Candidatas
n  Primárias
n  Externas
n  Compostas
20
Módulo13–TécnicasdeModelaçãodeDados
Chaves Candidatas
n  É um atributo ou conjunto de atributos que
poderá ser usado como chave primária
para uma dada entidade.
21
Módulo13–TécnicasdeModelaçãodeDados
Chaves Candidatas
N_Camisola Cod_Jogador Nome Idade Posição
9 1 Lisandro Lopez 25 Avançado
8 2 Lucho Gonzalez 27 Médio
2 3 Bruno Alves 26 Defesa
22
A chave… A chave… Qual ou quais as chaves
candidatas na tabela que se segue???
Módulo13–TécnicasdeModelaçãodeDados
Chave Primária
n  É um atributo ou conjunto de atributos que
assume a função de identificar de modo
unívoco as entidades ou registos de uma
tabela.
l  Ser unívoca
l  Não nula
l  Não redundante
23
Módulo13–TécnicasdeModelaçãodeDados
Chave Primária
24
N_Camisola Cod_Jogador Nome Idade Posição
9 1 Jackson 25 Avançado
8 2 Herrera 27 Médio
2 3 Maicon 26 Defesa
• Qual o campo que escolheria para chave primária
da tabela seguinte????
• Porquê esse e não… ou mesmo… ou então…
Módulo13–TécnicasdeModelaçãodeDados
Exercício
n  Criar uma tabela para os sócios de um
clube de futebol
l  Chaves candidatas
l  Chave primária
25
Módulo13–TécnicasdeModelaçãodeDados
Chave Externa
Cod_Req Cod_Filme N_Socio Data_Req
1 F121 1475 08-10-2008
2 F002 128 10-10-2008
26
N_Socio Nome Idade Morada
1 João Pedro 24 Porto
2 Carla Maria 31 Gaia
Cod_Filme Titulo Género Duração
F001 10 000 AC Aventura 104’
F002 O Jogo Acção 128’
Módulo13–TécnicasdeModelaçãodeDados
Chave Externa
n  É um atributo que é chave primária de uma
tabela e que vai aparecer como atributo de
uma outra tabela.
27
Módulo13–TécnicasdeModelaçãodeDados
Chave Externa
28
Módulo13–TécnicasdeModelaçãodeDados
Chave Composta
n  Corresponde à combinação de duas ou
mais chaves, e pode ser necessária para
eliminar a ambiguidade, formando um
identificador único.
29
Módulo13–TécnicasdeModelaçãodeDados
Chave Composta
Num Nome Turma Ano
1 Ana D 10.º
2 Bruno D 10.º
3 Carlos D 10.º
4 Carina D 10.º
30
Para descontrair, só mesmo uma tabela com uma
chave composta… Onde??? Onde???
Módulo13–TécnicasdeModelaçãodeDados
Ficha de trabalho 1
31
Módulo13–TécnicasdeModelaçãodeDados
Relações entre tabelas
32
n  Os relacionamentos são estabelecidos através de campos
comuns entre elas, e são os campos que desempenham
o papel de chaves primárias nas respectivas tabelas
n  Um relacionamento entre a tabela A e a tabela B faz-se
através de um campo que contém informação comum.
Módulo13–TécnicasdeModelaçãodeDados
Um para Um (1:1)
n  Cada registo da tabela A só pode
corresponder a um registo na tabela B e
cada registo da tabela B só pode
corresponder a um registo na tabela A.
33
Módulo13–TécnicasdeModelaçãodeDados
Um para Um (1:1)
34
Veículo Matrícula
um	
   um
Marca Modelo Num_Matricula
Audi A6 29-VV-47
Seat Ibiza 01-CG-25
Num_Matricula Mês Ano
29-GH-47 Setembro 2008
01-AB-25 Maio 2007
Veículo
Matrícula
Módulo13–TécnicasdeModelaçãodeDados
Um para Um (1:1)
n  Ensaiemos uma leitura da relação
anterior… Será que são capazes??? Não
estou a duvidar das vossas capacidade.
n  Em relação ao veículo…
l  … cada veiculo possui uma matricula.
n  Agora em relação à matricula…
l  … a uma matricula corresponde um único
veículo (convém).
35
Módulo13–TécnicasdeModelaçãodeDados
Um para Muitos
n  Cada registo da tabela A pode corresponder
a muitos registos da tabela B, mas cada
registo da tabela B corresponde apenas a um
registo da tabela A.
36
Módulo13–TécnicasdeModelaçãodeDados
Um para Muitos (1:N)
37
Cod_Prof Nome Depart
111 Ana Ferreira 1600
121 André Santos 1300
132 João Freitas 1600
145 Manuel Figueiredo 1600
Cod_Dep Nome Coordenador
1600 Matemática Lucas Santos
1300 Expressões Inês Silva
Professor Departamento
N 1
Professor
Departamento
Módulo13–TécnicasdeModelaçãodeDados
Um para Muitos (1:N)
n  Que leitura se pode fazer da relação
anterior???
n  Peguemos no departamento, se não for
muito pesado…
l  Um departamento é constituído por vários
professores.
n  Agora no professor, mas com jeitinho…
l  Um professor pertence a um só departamento.
38
Módulo13–TécnicasdeModelaçãodeDados
Muitos para Muitos
n  Num relacionamento muitos para muitos, um
registo na Tabela A pode ter muitos registos
coincidentes na Tabela B, e um registo na Tabela B
pode ter muitos registos coincidentes na Tabela A.
39
Módulo13–TécnicasdeModelaçãodeDados
Relações N:M
F_REF F_NOME F_FAIXA F_ANO F_ACTOR
73 Mamma Mia! 6 2008 Meryl Streep
581 Die Another Day 12 2003 Pierce Brosnan
623 Burn After Reading 12 2008 George Clooney
581 Die Another Day 12 2003 Halle Berry
73 Mamma Mia! 6 2008 Pierce Brosnan
623 Burn After Reading 12 2008 Brad Pitt
785 Ocean's Thirteen 12 2007 George Clooney
785 Ocean's Thirteen 12 2007 Brad Pitt
A_NOME A_FILME A_IDADE
Meryl Streep Mamma Mia! 59
Pierce Brosnan Die Another Day 55
George Clooney Burn After Reading 47
Halle Berry Die Another Day 42
Pierce Brosnan Mamma Mia! 55
Brad Pitt Burn After Reading 44
George Clooney Ocean's Thirteen 47
Brad Pitt Ocean's Thirteen 44
Módulo13–TécnicasdeModelaçãodeDados
Muitos para Muitos
n  Uma relação deste tipo só é possível definir
recorrendo a uma terceira tabela (tabela de
associação) cuja chave primária consiste em duas
chaves externas provenientes das Tabelas A e B.
n  … “transforma-se” em duas relações de um para
muitos.
n  Ou seja, vamos pegar no exemplo anterior e
transformar em 3 tabelas com duas relações.
n  Experimentemos, sem medos… 41
Módulo13–TécnicasdeModelaçãodeDados
Relações N:M
F_REF F_NOME F_FAIXA F_ANO
73 Mamma Mia! 6 2008
581 Die Another Day 12 2003
623 Burn After Reading 12 2008
785 Ocean's Thirteen 12 2007
A_NOME A_IDADE A_FOTO
Meryl Streep 59
Pierce Brosnan 55
George Clooney 47
Halle Berry 42
Brad Pitt 44
F_REF F_ACTOR
73 Meryl Streep
581 Pierce Brosnan
623 George Clooney
581 Halle Berry
73 Pierce Brosnan
623 Brad Pitt
785 George Clooney
785 Brad Pitt
Módulo13–TécnicasdeModelaçãodeDados
Ficha de trabalho 2
43
Módulo13–TécnicasdeModelaçãodeDados
Na Prática…
… como pode:
n  fazer tabelas ???
n  estabelecer relacionamentos ???
Por exemplo, recorrendo a um
SGDB (Sistema de Gestão de Base de Dados)
Como por exemplo, aquele que deram em TIC no
10ºAno, lembram-se??? xiiii, onde isso já vai mas
é esse mesmo, o……………………….Access 44
Módulo13–TécnicasdeModelaçãodeDados
Access - Possibilita
n  Criar uma tabela
n  Introduzir dados na tabela
n  Mudar a vista da tabela
n  Inserir e apagar campos
n  Alterar a posição dos campos
n  Definir Tipos de dados
45
Módulo13–TécnicasdeModelaçãodeDados
Tabelas – Tipo de dados
46
TIPO DE DADOS DESCRIÇÃO
Texto
Texto (caracteres alfanuméricos), podendo contar até 255 caracteres.
Usados para guardar Nome de pessoas, endereços, nº telefone, etc.
Memo
Texto longo, ou combinação de texto e números. Limitado a cerca de
65000 caracteres. Utilizado para guardar grandes blocos de texto.
Número
Dados numéricos (inteiros ou fraccionários). Utilizado para guardar
dados numéricos que podem ser usados em cálculos matemáticos.
Data/Hora Valores de data e hora.
Moeda
Valores de moeda e dados numéricos utilizados em cálculos
matemáticos (Ex: Preços, facturas, etc) que envolvam dados com uma
de quatro casas decimais.
Módulo13–TécnicasdeModelaçãodeDados
Tabelas – Tipo de dados
47
TIPO DE DADOS DESCRIÇÃO
Numeração
automática
Um número sequencial único (por defeito com incrementos de 1)
preenchido sempre que se adiciona um novo registo a uma tabela.
São campos que não podem ser alterados.
Sim/Não
Campo que contêm apenas dois valores: Sim e Não; Verdadeiro e
Falso; Ligado e Desligado.
Objecto OLE
Permite armazenar um objecto de outras aplicações Windows
(gráficos, fotografias, desenhos, folhas de cálculo, etc).
Hiperligação Permite comunicar através da Internet com uma página HTML.
Assistente de
pesquisa
Ajuda a inserir dados cujos valores são escolhidos a partir de outra
tabela, fazendo com que a entrada de dados se faça mais
rapidamente.
Módulo13–TécnicasdeModelaçãodeDados
Access - Revisão
48
n  Revisão Prática Access
l  Tabelas
l  Relacionamentos
Módulo13–TécnicasdeModelaçãodeDados
Ficha de trabalho 3
49
Módulo13–TécnicasdeModelaçãodeDados
Em jeito de resumo….
n 
n  e de passagem, não para a outra margem, mas para o
modelo E –R
n  Analise o documento que se encontra em:
http://pplware.sapo.pt/tutoriais/estruturacao-de-uma-base-
de-dados/
50
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R
n  É como quem diz, Modelo Entidade – Relacionamento, o
que já nos dá mais alguma informação.
Sim, que tem entidades e relacionamentos, boa ... Trata-se
então de um modelo:
n  De dados conceptual;
n  Próximo do modelo relacional;
n  Descreve os dados como sendo:
l  entidades, atributos ou relacionamentos. 51
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R
“O Modelo E-R é um
modelo baseado na
percepção do mundo
real, que consiste num
conjunto de objectos
básicos chamados
entidades e nas relações
entre esses objectos.”
52
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Entidade
n  Não se trata da divina, à qual pedem para passar a PSI…
n  É um objecto ou conceito do mundo real que se consegue isolar de
forma independente
n  Qualquer coisa, real ou abstracta, sobre a qual guardamos dados
para produzir informação requerida pelo sistema de informação em
estudo
n  Pode ter uma existência:
n  Física: Empregado, Carro, Produto,
n  Conceptual: Empresa, Profissão, Curso, 53
Módulo13–TécnicasdeModelaçãodeDados
n  Dados que são guardados sobre as entidades e
que dessa forma as caracterizam.
n  Exemplos…Esta é fácil Alguém???
n  Atributos para a Entidade Pessoa:
l  Nome, Morada, Idade, Telefone, Sexo, Estado Civil,
54
Modelo E-R -> Atributo
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Considerações
55
Uma entidade deve ter pelo menos dois atributos
Módulo13–TécnicasdeModelaçãodeDados
n  Não nos cansamos de repetir …
… não existem padrões (entidades padrão), a importância
das coisas e a forma como as vemos varia com a natureza e
o objectivo do sistema de informação em estudo.
56
Modelo E-R -> Considerações
Módulo13–TécnicasdeModelaçãodeDados
57
Modelo E-R ->Relacionamentos
Aluno _________ Aula
Cliente _________ Encomenda
Doente _________ Cama
Doente _________ Enfermaria
Enfermeira _________ Doente
• Faz
• Assiste à
• Tem
• Pertence
• Trata
Módulo13–TécnicasdeModelaçãodeDados
n  O que são então relacionamentos???
n  Associação entre duas ou mais entidades
n  Depois de se definirem as Entidades e
respectivos Atributos,
n  deve perceber como essas entidades se
relacionam entre si.
58
Modelo E-R ->Relacionamentos
Módulo13–TécnicasdeModelaçãodeDados
• Assiste à
Modelo E-R -> Porquê???
n  Mostra a essência lógica do sistema de
informação em estudo.
Módulo13–TécnicasdeModelaçãodeDados
• Assiste à
Modelo E-R -> Porquê???
n  Não é um diagrama técnico
Módulo13–TécnicasdeModelaçãodeDados
• Assiste à
Modelo E-R -> Porquê???
n  Não faz referência temporal
Módulo13–TécnicasdeModelaçãodeDados
n  Informação do sistema de informação é organizada
recorrendo ao conceito de entidade, relação e atributo. 62
Modelo E-R -> Porquê???
Módulo13–TécnicasdeModelaçãodeDados
n  Tanto pode ser usado para representar o
modelo da organização ou de um sistema de
Modelo E-R -> Porquê???
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Notações
n  Notação Peter Chen
64
Módulo13–TécnicasdeModelaçãodeDados
Algumas convenções de Sintaxe:
n  Entidades escrevem-se em letras maiúsculas;
l  ALUNO, EMPREGADO, VEÍCULO
n  Atributos escrevem-se com a primeira letra maiúscula;
l  Nome, Vencimento, BI
n  Atributos chave são sublinhados;
l  NumBI, NumAluno, Matricula
n  Atributos compostos entre parêntesis
l  Morada(Rua, Número, Habitação), Matricula(Ano, Mês,
País) 65
Modelo E-R -> Notações
Módulo13–TécnicasdeModelaçãodeDados
n  Vantagens deste tipo de modelos:
l  Simplicidade
l  Clareza Gráfica
n  Que para muito contribui a utilização de
componentes como:
l  Retângulos;
l  Elipses;
l  Losangos;
l  Linhas; 66
Modelo E-R -> Notações
Módulo13–TécnicasdeModelaçãodeDados
n  O que representa cada um dos objetos
anteriores?
n  Temos os genéricos… não confundir com os
medicamentos …
Entidades
67
Modelo E-R -> Notações
Atributos
Relacionamentos
Atributo Chave Primária
Módulo13–TécnicasdeModelaçãodeDados
n  Os não tão genéricos …
68
Modelo E-R -> Notações
Atributo Composto
Atributo Multivalor
Carnidalidade (neste caso 1:N)
Participação Total E2 em R e
Participação Parcial de E1 em R
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Notações Deve ser lido da
esquerda para a direita e de cima para baixo
69
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Notações
n  Résumé do modelo anterior…
70
Entidades
(e não só - atributos e chaves -)
DEPARTAMENTO(Nome, Num, {Localização})
PROJECTO(Nome, Num, Localização)
EMPREGADO(Nome(Próprio, Família), NumBI, Endereço, Salário,
Sexo, DataNasc)
Entidade Fraca
DEPENDENTE(Nome,Sexo, DataNasc, GrauParentesco)
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Notações
Relacionamentos Tipo
(cardinalidade)
Participação
DIRIGE(EMPREGADO, DEPARTAMENTO, GerenteData) 1:1 Parcial / Total
CONTROLA(DEPARTAMENTO, PROJECTO) 1:N Parcial / Total
SUPERVISIONA(EMPREGADO, EMPREGADO) 1:N Parcial / Parcial
TRABALHA_PARA(EMPREGADO, DEPARTAMENTO) N:1 Total/Total
TRABALHA_EM(EMPREGADO, PROJECTO, Horas) M:N Total/Total
DEPENDE_DE(DEPENDENTE, EMPREGADO) N:1 Total/Parcial
71
Módulo13–TécnicasdeModelaçãodeDados
n  Last but not least … calma, não fiquem tristes, é que
depois há mais ... É só mais uma perguntinha:
n  Porque é que a participação de
DIRIGE(EMPREGADO, DEPARTAMENTO, GerenteData)
é Parcial (uma linha) / Total (duas linhas paralelas) ???
n  Simples, é só isso ??? Mande outra, por favor …
n  Só um empregado (ou seja, nem todos) DIRIGE um
departamento (Parcial) mas, todos os departamentos
são dirigidos por um empregado (Total). 72
Modelo E-R -> Notações
Módulo13–TécnicasdeModelaçãodeDados
Modelo E- R -> Notações
73
• 1 Um A está associado ______ B.
• 2 Um A está associado com ____________ B’s.
• 3 Um A está associado com ___________ B.
• 4 Um A está associado com _______________ B’s.
• a um
• um ou mais
• zero ou um
• zero, um ou mais
Módulo13–TécnicasdeModelaçãodeDados
• Carro
74
Modelo E- R -> Considerações
• Aluno • Disciplina
• Professor • Turma
• Manual
• Cliente
• Como dito anteriormente, uma entidade no diagrama E-R,
deve ser algo interessante e que faça sentido para o
sistema de informação que se está a tratar.
• Quais as Entidades que não fazem sentido no exemplo
Acima… nem que seja por maioria, que faz a força.
Módulo13–TécnicasdeModelaçãodeDados
75
Modelo E- R -> Considerações
A ligação entre entidades é feita através de uma linha
… que devem evitar cruzarem-se
Nota: NUNCA se duplicam Entidades
Módulo13–TécnicasdeModelaçãodeDados
n  Como se faz a leitura do diagrama?
76
Modelo E- R -> Considerações
1 - Para baixo do lado direito da linha
2 - Para cima do lado esquerdo da linha
3 - Da esquerda para a direita do lado de cima da linha
4 - Da direita para a esquerda do lado de baixo da linha
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Dica
n  Que tal uma lição de bom português???
n  Com o alto patrocínio…
n  Normalmente:
Substantivo -> indica uma ENTIDADE…
… pode também indicar um Atributo;
Verbo ->indica uma RELAÇÃO. 77
Módulo13–TécnicasdeModelaçãodeDados
Modelo E-R -> Software
78
Módulo13–TécnicasdeModelaçãodeDados
Ficha de trabalho 4
79
Módulo13–TécnicasdeModelaçãodeDados
Integridade
n  Quando se falou no inicio do módulo xiiiiiii, onde isso já
vai em objectivos dos SGBD (o que é isto???) focaram-
se aspetos como:
n  Proteger a BD contra atualizações não válidas, o que
… garante a sua consistência
n  Preservar a integridade
…restrições de integridade
80
Módulo13–TécnicasdeModelaçãodeDados
Preservação de Integridade
n  A preservação (restrição) de integridade… e se há coisa
que não se deve perder é a integridade… permite:
n  Garantir de que alterações realizadas por utilizadores
autorizados não ocasionam a perda de consistência dos
dados - “Integrity constraints”
n  Protegem a BD de danos acidentais
81
Módulo13–TécnicasdeModelaçãodeDados
Preservação de Integridade - domínio
n  O valor de cada atributo deve ser um valor
atómico dentro do domínio daquele atributo
ou um valor nulo
82• O valor do Salário é do tipo moeda, pelo que,
qualquer outro tipo viola este principio.
• Imagine que o valor do salário tem de estar no
intervalo entre: 500€ e 5.000€.
• O valor 9.100€ viola este principio
Módulo13–TécnicasdeModelaçãodeDados
Preservação de Integridade - semântica
n  “Business Rules”
n  Relacionada directamente com a aplicação,
independente da estrutura da BD
n  Exemplos:
l  Uma pessoa não pode ter mais de três contas bancárias
l  O total de limite de créditos não pode ultrapassar 100.000€
l  O salário de um empregado não pode ser superior ao do gerente
83
Módulo13–TécnicasdeModelaçãodeDados
n  Impõe que os valores dos atributos que correspondem à
chave primária de uma entidade não podem ser nulos
nem iguais a outros já existentes na tabela
n  Se assim fosse, esse atributo deixaria de ser chave.
n  Bem visto, tem lógica e faz sentido.
84
Preservação de Integridade - entidade
Módulo13–TécnicasdeModelaçãodeDados
Preservação de Integridade – referencial
n  Impõe que um valor de uma chave externa tem
obrigatoriamente de existir como elemento
constituinte da chave primária da tabela
relacionada com aquela chave externa.
n  Os valores dos campos que aparecem numa
chave externas devem estar presentes na coluna
da chave primária da tabela referenciada
85
Módulo13–TécnicasdeModelaçãodeDados
n  Exemplo:
86
Preservação de Integridade – referencial
Módulo13–TécnicasdeModelaçãodeDados
Cod Cliente Nome Morada
Ana Porto
C102 Rui Lisboa
C103 Luis Faro
87
Preservação de Integridade – Exemplo
Cod Artigo Artigo Cod Forn
1011 Modem 101
1011 Scanner 101
1033 Tecladi 102
Nº Enc DataEnc CodCli CodArt Quant
1 2014-10-10 C102 1011 1
2 2014-10-10 C103 115 3
3 2014-10-11 C102 1033 x
4 2014-10-12 C113 1011 1
CLIENTES
ARTIGOS
ENCOMENDAS
Módulo13–TécnicasdeModelaçãodeDados
Ficha de trabalho nº 5
88
Normalização
Módulo13–TécnicasdeModelaçãodeDados
Entidade
n  Objecto acerca do qual se pretende
guardar dados.
n  Corresponde a uma tabela ou a um
ficheiro.
n  Exemplos:
l  Proprietário.
l  Cavalo.
l  Aluno.
l  Pessoa.
Módulo13–TécnicasdeModelaçãodeDados
Abstraindo…
n  Entidade.
l  Objecto acerca do qual se guardam os dados.
n  Relação.
l  Associação entre duas entidades;
l  Campos comuns existentes entre duas
entidades.
• Ent. 1
• Ent. 2
Módulo13–TécnicasdeModelaçãodeDados
Atributo
n  Corresponde ao nome de um campo.
n  Exemplo:
l  Nome;
l  Morada;
l  Telefone;
l  Sexo;
l  Data nascimento;
l  Código postal.
Módulo13–TécnicasdeModelaçãodeDados
Modelo Relacional
n  A estrutura fundamental do modelo relacional é
a relação, também designada por tabela;
n  Os dados estão armazenados em tabelas.
n  Todos os dados devem ser acedidos de uma
forma única (tabela, chave, campo).
n  Na mesma tabela não podem existir registos
duplicados.
n  Uma relação é uma estrutura bidimensional
que tem zero ou mais instâncias (ocorrência de
uma entidade);
Módulo13–TécnicasdeModelaçãodeDados
Modelo Relacional
n  O esquema de uma relação é constituído por um ou
mais atributos que traduzem o tipo de dados a
armazenar.
n  A cada instância do esquema de uma relação
designa-se por tuplo.
n  Para cada atributo define-se o seu domínio. O
domínio traduz um conjunto de valores possíveis que
um atributo pode tomar.
n  Ao número de atributos que constituem o esquema de
uma relação dá-se o nome de grau de relação .
n  Por sua vez, o número de tuplos de uma relação
designa-se por cardinalidade da relação
Módulo13–TécnicasdeModelaçãodeDados
Modelo Relacional
Cod_Produto Designação Preço
1234 Monitor 100
4321 Teclado 35
2143 Rato 10
3421 Impressora 60
• TUPLO
• Grau da Relação
• Cardinalidade
•  da Relação
• Atributos
•  O valor de cada tuplo é atómico. No cruzamento de uma linha com uma
coluna só e possível encontrar um valor.
•  Os atributos de uma relação devem ter identificadores distintos.
•  Os atributos de uma relação devem ser distintos.
Módulo13–TécnicasdeModelaçãodeDados
n  Desenhar uma base de dados é uma arte
que requer criatividade e experiência.
n  Abordagem Top-Down – Modelo E-R
n  Abordagem Bottom-up - Normalização
Como Chegar ao Mod. Relacional?
Módulo13–TécnicasdeModelaçãodeDados
Chave Primária
n  Campo ou conjunto de campos que
identificam de forma única um registo.
Aluno
ID Alun Ano Turma Nome Fran Ing ITI
1 12º 4A Ana 12 13 12
2 12º 4A Inês 15 13 12
3 12º 4A João 12 15 17
4 12º 4B Ana 12 13 12
5 11º 4A Ana 12 13 12
n  Simples -
Um só
atributo
n  Composta
- Mais do
que um
atributo
Módulo13–TécnicasdeModelaçãodeDados
Chave Externa
n  Chave armazenada num registo para estabelecer a
relação entre os registos.
n  A chave externa de um registo é chave primária do
registo relacionado. Turma
Id-turm Ano Turma
1 12º 4A
2 12º 4B
3 11º 4A
Aluno
ID- Alun Nome Fra Ing ITI Id-turm
1 Ana 12 13 12 1
2 Inês 15 13 12 1
3 João 12 15 17 1
4 Ana 12 13 12 2
5 Ana 12 12 12 3
Módulo13–TécnicasdeModelaçãodeDados
Normalização
Objectivo
Encontrar um esquema de
base de dados relacional
capaz de suportar os
dados relevantes a um
determinado universo
Necessidade de organizar
os dados de forma a que
estes possam ser
tratados relacionalmente
Aparecimento
do Modelo
Relacional
Módulo13–TécnicasdeModelaçãodeDados
O que é a Normalização?
Conjunto de normas
para uma boa
estruturação das bases
de dados relacionais
A EVITAR...
Redundância ou a
perda de integridade da
informação
Módulo13–TécnicasdeModelaçãodeDados
Problemas de desempenho
Custos de espaço de armazenamento
Problemas de manutenção
Armazenamento repetido dos mesmos dados
Redundância
Módulo13–TécnicasdeModelaçãodeDados
O processo de normalização está traduzido
nas dependências existentes entre os dados
•  Num_Aluno • Nome_Aluno
•  Num_Jogador • Nome_Jogador
•  O nome do aluno depende funcionalmente do nº aluno
•  O número do aluno identifica o nome do aluno
Dependências
Módulo13–TécnicasdeModelaçãodeDados
Processo de Normalização
• 1ª Forma Normal (1FN)
• 3ª Forma Normal (3FN)
• 2ª Forma Normal (2FN)
• Inicialmente...
Módulo13–TécnicasdeModelaçãodeDados
Processo de Normalização
• Forma Normal de Boyce-
Codd (FNCB)
• 5ª Forma Normal (5FN)
• 4ª Forma Normal (4FN)
• Posteriormente...
Módulo13–TécnicasdeModelaçãodeDados
Processo de Normalização
FORMAS NORMAIS
FNCB1FN
Ponto de Equilíbrio
3FN 5FN4FN2FN
û  menos relações
û  mais redundância
û  mais relações
û  menos redundância
Módulo13–TécnicasdeModelaçãodeDados
Num_Alu Nome Curso Disciplinas
1 Brahimi FCP Port, Mat,TIC
2 Talisca SLB Port, PSI, Ed.Fisica
3 Nani SCP RC, AC, PSI
Esta tabela não respeita a 1FN : o campo
DISCIPLINAS permite valores não atómicos
Processo de Normalização
Módulo13–TécnicasdeModelaçãodeDados
Num_Alu Nome Curso Disc1 Disc2 Disc3
1 Brahimi FCP Port Mat TIC
2 Talisca SLB Port PSI Ed.
Fisica
3 Nani SCP RC AC PSI
Esta tabela também não respeita a 1FN. Embora,
neste caso todos os campos sejam atómicos
existem campos repetidos para uma mesma
categoria.
Processo de Normalização
Módulo13–TécnicasdeModelaçãodeDados
Num_Alu Nome Curso Disciplina
1 Brahimi FCP Port
1 Brahimi FCP Mat
1 Brahimi FCP TIC
2 Talisca SLB Port
2 Talisca SLB PSI
2 Talisca SLB Ed. Fisica
3 Nani SCP RC
3 Nani SCP AC
3 Nani SCP PSI
Esta tabela respeita a 1FN. Porém, coloca um problema de redundância de
informação: para cada disciplina em que o aluno está inscrito é necessário
repetir a informação relativa a esse aluno.
Processo de Normalização
Módulo13–TécnicasdeModelaçãodeDados
Dados não normalizados
Aluno
Num_Aluno
Nome_Aluno
Curso
Disciplinas *
Num_Disc
Nome _Disc
Cod_Prof
Nome_Prof
Nota
Forma Não Normal (FNN)
Módulo13–TécnicasdeModelaçãodeDados
1ª Forma Normal (1FN)
Uma entidade está na 1FN quando não contém grupos
repetidos
Eliminam-se os grupos repetidos
Determinam-se as chaves
Módulo13–TécnicasdeModelaçãodeDados
1ª Forma Normal (1FN)
Módulo13–TécnicasdeModelaçãodeDados
• Entidade está na 1FN.
• Cada item da entidade deve ser funcionalmente
dependente da chave da entidade, ou seja, de toda
a chave.
Chaves e atributos
dependem da totalidade da
chave
2ª Forma Normal (2FN)
Módulo13–TécnicasdeModelaçãodeDados
2ª Forma Normal (2FN)
A chave só tem UM atributo;
A tabela está na 1FN;
2FN Chaves e atributos
dependem da
totalidade da chave
Módulo13–TécnicasdeModelaçãodeDados
2ª Forma Normal (2FN)
A chave é COMPOSTA;
Analisam-se as
dependências dos outros
atributos
Decomposição da tabela
2FN
Módulo13–TécnicasdeModelaçãodeDados
2ª Forma Normal (2FN)
Módulo13–TécnicasdeModelaçãodeDados
3ª Forma Normal (3FN)
Entidade está na 2FN.
Todos os campos que não são parte da chave primária
são mutuamente independentes, ou seja, não existem
dependências transitivas.
Os atributos não-chave
têm de ser
independentes entre si.
Módulo13–TécnicasdeModelaçãodeDados
•  Se não existir nenhuma
dependência funcional
entre os atributos não-
chave
•  A tabela está na 2FN;
3FN
• Se existir alguma
dependência funcional entre
atributos não-chave
• Retirar esse conjunto de
atributos da tabela
• Constituir uma tabela à
parte
3ª Forma Normal (3FN)
Módulo13–TécnicasdeModelaçãodeDados
• Cod_Prof
• Nome_prof
• Professores
• Num_Disc
• Nome_Disc
• Cod_Prof
• Disciplinas
• Num_Aluno
• Num_Disc
• Nota
• Alunos/ Disciplinas
• Num_Aluno
• Nome
• Curso
• Alunos
3 FN
3ª Forma Normal (3FN)
Módulo13–TécnicasdeModelaçãodeDados
Normalização – Formas Normais
119
q  O résumé …
q  Um - 1FN
Todos os campos devem ser atómicos e não deve haver campos
repetidos.
q  Dois - 2FN
Cada atributo não-chave tem de ser funcionalmente dependente da chave
na sua totalidade e não apenas de uma parte dessa chave;
q  Três - 3FN
Um atributo não-chave não pode depender funcionalmente de nenhum
outro atributo que não seja a chave - (Chave Externa)
Módulo13–TécnicasdeModelaçãodeDados
Ficha de trabalho nº 6
120
Módulo13–TécnicasdeModelaçãodeDados
REVISÕES…
121
FICHA nº 7 FICHA nº 8
Módulo13–TécnicasdeModelaçãodeDados
122

Mais conteúdo relacionado

PDF
Banco de dados - Aula 1 SQL
PPTX
Módulo 12 - Introdução aos sistemas de informação
PDF
Modelação de Dados
PDF
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
PPTX
Aula sobre matrizes - Linguagem C
PDF
Banco de dados exercícios resolvidos
PDF
Aula1 - Apresentação de Banco de Dados
PPT
Aula 2 - Introdução a Banco de Dados
Banco de dados - Aula 1 SQL
Módulo 12 - Introdução aos sistemas de informação
Modelação de Dados
Banco de Dados I - Aula 03 - Conceitos de Sistemas de Banco de Dados
Aula sobre matrizes - Linguagem C
Banco de dados exercícios resolvidos
Aula1 - Apresentação de Banco de Dados
Aula 2 - Introdução a Banco de Dados

Mais procurados (20)

PPTX
Banco de dados
PDF
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
PDF
Curso de Desenvolvimento Web - Módulo 02 - CSS
PPTX
Aula 4 banco de dados
PDF
Banco de Dados II Aula 01 - Apresentação
PDF
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
PPTX
Redes de Computadores - Aula 01
PDF
Banco de Dados I Aula 06 - Generalização e Especialização
PDF
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
PDF
Psi-mod-15
PPTX
Prática de laboratório utilizando views, stored procedures e triggers
PDF
Aula 1 - Introdução a POO
PDF
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
PDF
Aula 1 - Introdução ao Mobile
PDF
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
PPTX
Psi m14
PDF
Programação Orientada á Objeto - Paradigmas e Implementação
DOCX
Criação de uma base de dados para gestão de uma biblioteca
PDF
1.Introdução Banco de Dados
PDF
Arquitetura de Computadores: Sistemas de numeração
Banco de dados
Banco de Dados II Aula 04 - MODELAGEM DE DADOS (Generalização e Especialização)
Curso de Desenvolvimento Web - Módulo 02 - CSS
Aula 4 banco de dados
Banco de Dados II Aula 01 - Apresentação
Estrutura de Dados - Aula 02 - Estrutura de Dados e TAD
Redes de Computadores - Aula 01
Banco de Dados I Aula 06 - Generalização e Especialização
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Psi-mod-15
Prática de laboratório utilizando views, stored procedures e triggers
Aula 1 - Introdução a POO
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Aula 1 - Introdução ao Mobile
Banco de Dados II Aula 03 - Modelagem de Dados (Modelo Lógico)
Psi m14
Programação Orientada á Objeto - Paradigmas e Implementação
Criação de uma base de dados para gestão de uma biblioteca
1.Introdução Banco de Dados
Arquitetura de Computadores: Sistemas de numeração
Anúncio

Destaque (20)

PPTX
Modelagem de dados
PPT
Modelagem de dados e objetos
PPT
Módulo 2.1-componentes de um computador
PDF
mod4-estruturas-dadosestaticas-ordenacao
DOCX
Correcção da ficha 4 e 5
PDF
mod5-estruturas-dadosdinamicas
PDF
mod3-programação-estruturada
PPT
Módulo-2.2-estudo das componentes internas
PDF
Psi-mod-op2
PDF
Tic-excel-01
PPTX
Aula 3 modelagem de dados
PDF
Tic-excel-02
PDF
mod2-mecanismos
PDF
So-mod-1
PDF
Modulo-3
PDF
Tic-excel-03
PDF
Ac Mod 3 deteção de avarias - Esquemas
PDF
So-mod-4
PDF
So-mod-2
PDF
M5-Desenvolvimento-Paginas-Web
Modelagem de dados
Modelagem de dados e objetos
Módulo 2.1-componentes de um computador
mod4-estruturas-dadosestaticas-ordenacao
Correcção da ficha 4 e 5
mod5-estruturas-dadosdinamicas
mod3-programação-estruturada
Módulo-2.2-estudo das componentes internas
Psi-mod-op2
Tic-excel-01
Aula 3 modelagem de dados
Tic-excel-02
mod2-mecanismos
So-mod-1
Modulo-3
Tic-excel-03
Ac Mod 3 deteção de avarias - Esquemas
So-mod-4
So-mod-2
M5-Desenvolvimento-Paginas-Web
Anúncio

Semelhante a Psi-mod-13 (20)

DOCX
Revisoesm2
PDF
Sistemas de Base de Dados
DOCX
Materia sobre Microsoft excel
PPTX
Bases de Dados - Conceitos introdutórios
PDF
Conceitos geraiss gestão de base dados
PPT
1 - Bases de Dados.ppt
PDF
02 LabMM4 - Bases de dados
PPT
PDF
1º trabalho base dados
PPTX
Aula 4 modelo relacional
DOC
Artc 1249307788 43
PDF
LabMM4 (T02 - 12/13) - Bases de dados
PDF
Base de dados no Excel 1.pdf
PDF
Base de Dados - Introdução
PDF
Ficha de Trabalho Nº 12- Excel.pdf
PPT
Introdução BD
PPTX
Novo microsoft office power point presentation
PDF
03 LabMM4 - Bases de dados
Revisoesm2
Sistemas de Base de Dados
Materia sobre Microsoft excel
Bases de Dados - Conceitos introdutórios
Conceitos geraiss gestão de base dados
1 - Bases de Dados.ppt
02 LabMM4 - Bases de dados
1º trabalho base dados
Aula 4 modelo relacional
Artc 1249307788 43
LabMM4 (T02 - 12/13) - Bases de dados
Base de dados no Excel 1.pdf
Base de Dados - Introdução
Ficha de Trabalho Nº 12- Excel.pdf
Introdução BD
Novo microsoft office power point presentation
03 LabMM4 - Bases de dados

Mais de diogoa21 (6)

PPT
Módulo-2.3-estudo de periféricos e suas características e configuração
PDF
Manual-de-php
PDF
Módulo-6-7-ip-com-sockets
PDF
Modulo-4-css
PDF
Modulo4- Html-Guia
PDF
mod1-algoritmia
Módulo-2.3-estudo de periféricos e suas características e configuração
Manual-de-php
Módulo-6-7-ip-com-sockets
Modulo-4-css
Modulo4- Html-Guia
mod1-algoritmia

Último (20)

PPSX
2. A Cultura do Senado - HistóriaCArtes.ppsx
PPT
AS VANGUARDAS EUROPEIAS NA LITERATURA E N
PDF
Reino Monera - Biologiaensinomediofun.pdf
PDF
Pecados desdenhados por muita gente (islamismo)
PDF
historia-e-geografia-do-amapa.pdf slides
PDF
cadernodoprofessor20142017vol2baixalceducfisicaef6s7a-170409213016.pdf manual...
PPTX
PERÍODO SIMPLES - TERMOS ESSENCIAIS DA ORAÇÃO - Valdeci.pptx
PDF
edital-de-chamamento-publico-no-3-2025.pdf
PPTX
Slides Lição 8, Betel, Jesus e a Mulher Adúltera, 3Tr25.pptx
PPTX
REVISA-GOIAS-6o-ANO-LP-3o-BIMESTRE-PPT.pptx
PPTX
4. A cultura do cinema e as vanguardas.pptx
PPTX
125519 - Aula 2 - Riqueza e diversidade povos indígenas na América Portuguesa...
PDF
Caderno do Futuro 1º Ano CIÊNCIAS Aluno.pdf
PPTX
Primeiros Socorros. Aula 1 VEROUVIRSENTIR.pptx
PPTX
matriaesuastransformaes-1ano-230402203238-f3b10049.pptx
PPTX
NR 5 Treinamento completo gestão CIPA.pptx
PPTX
5. A cultura do mundo virtual - globalidade.pptx
PPT
Domínios Morfoclimáticos.................................
PDF
EXPRESSÕES IDIOMÁTICAS - LÍNGUA PORTUGUESA
PPT
16 - Treinamento Introdutório de SSO - Saúde - Primeiros Socorros.ppt
2. A Cultura do Senado - HistóriaCArtes.ppsx
AS VANGUARDAS EUROPEIAS NA LITERATURA E N
Reino Monera - Biologiaensinomediofun.pdf
Pecados desdenhados por muita gente (islamismo)
historia-e-geografia-do-amapa.pdf slides
cadernodoprofessor20142017vol2baixalceducfisicaef6s7a-170409213016.pdf manual...
PERÍODO SIMPLES - TERMOS ESSENCIAIS DA ORAÇÃO - Valdeci.pptx
edital-de-chamamento-publico-no-3-2025.pdf
Slides Lição 8, Betel, Jesus e a Mulher Adúltera, 3Tr25.pptx
REVISA-GOIAS-6o-ANO-LP-3o-BIMESTRE-PPT.pptx
4. A cultura do cinema e as vanguardas.pptx
125519 - Aula 2 - Riqueza e diversidade povos indígenas na América Portuguesa...
Caderno do Futuro 1º Ano CIÊNCIAS Aluno.pdf
Primeiros Socorros. Aula 1 VEROUVIRSENTIR.pptx
matriaesuastransformaes-1ano-230402203238-f3b10049.pptx
NR 5 Treinamento completo gestão CIPA.pptx
5. A cultura do mundo virtual - globalidade.pptx
Domínios Morfoclimáticos.................................
EXPRESSÕES IDIOMÁTICAS - LÍNGUA PORTUGUESA
16 - Treinamento Introdutório de SSO - Saúde - Primeiros Socorros.ppt

Psi-mod-13