Upload
dangtruc
View
216
Download
0
Embed Size (px)
Citation preview
1
TI2007/08 MEA_1
Cadeira de Tecnologias de Informação
Ano lectivo 2007/08
Prof. Mário Caldeira
Profª Ana Lucas
Dr. Fernando Naves
Engª Winnie Picoto
Engº Luis Vaz Henriques
Dr. José Camacho
Modelo Entidade-Associação
TI2007/08 MEA_2
• Técnica para modelizar os dados de um sistema de informação
• Modelo conceptual independente datecnologia
O Que é?
2
TI2007/08 MEA_3
Vantagens
• Questionar regras da organização
• Salientar novas necessidades de informação
• Revelar incoerências actuais
• Construção faseada, “ Top-Down ”
• Facilidade de comunicação entreutilizadores e informáticos
TI2007/08 MEA_4
Níveis de descrição
Gráfico
Diagrama Entidade/Associação
Descritivo
Especificações para cadacomponente do modelo
Entidades Associações
Descrição
ENTIDADES
Descrição
ASSOCIAÇÕES
Descrições de
ATRIBUTOS
3
TI2007/08 MEA_5
Análise das necessidades informacionais e
elaboração do modelo Entidade-Associação
Análise das necessidades informacionais e
elaboração do modelo Entidade-Associação
Transformação do Modelo EA num conjunto de
tabelas
Transformação do Modelo EA num conjunto de
tabelas
Normalização das tabelasNormalização das tabelas
Etapa 1
Etapa 3
Etapa 2
Modelo EA
Tabelas não normalizadas
Tabelas normalizadas
Análise e Concepção
Desenho
Etapas da Modelização da Informação
TI2007/08 MEA_6
Conceitos básicos
– Entidade
– Associação
– Entidade Associativa
– Atributo
4
TI2007/08 MEA_7
Entidade
Qualquer objecto ou conceito com interesse para
a organização, sobre o qual se quer guardar
informação e que possa ser identificável de
forma inequívoca
Exemplos:
• Contrato
• Produto
• Cliente
• Fornecedor
«Nome-da-Entidade»
TI2007/08 MEA_8
Atributo
• Propriedade que caracteriza uma entidadeExemplos:
• Nº de Cliente
• Nome de Cliente
• Morada de Cliente
• ...
• Elementos atómicos que assumem valores
de um domínio
Propriedades da Entidade “Cliente ”
5
TI2007/08 MEA_9
Tipos de Atributos
• Identificadores ou Chaves Candidatas
• são os atributos de uma entidade que identificam, de
forma inequívoca, uma ocorrência específica dessa
entidade, distinguindo-a das restantes.
• Descritores
• são os atributos que apenas descrevem ou caracterizam
as ocorrências de uma entidade
TI2007/08 MEA_10
Exemplo : Uma entidade “FUNCIONÁRIO” com as seguintes ocorrências:
O único identificador desta entidade é o atributo “Nº FUNCIONÁRIO”
Nº Funcionar. Nome Categoria
1234
1235
1236
1237
Silva
Martins
Silva
Lopes
J
H
L
L... ... ...
Identificador ou Chave Candidata
6
TI2007/08 MEA_11
Descrição de uma Entidade
Uma possível representação da descrição de uma entidade é:
Cliente
Nº Cliente
Nome Cliente
Morada
Telefone
Nº Contribuinte
...
Identificadores
Nº Cliente
Nº Contribuinte
EmpregadoNº Empregado
Nome Empregado
Morada
B.I.
Local Emissão B.I.
Telefone
Data Nascimento
Nº Contribuinte
IdentificadoresNº Empregado
B.I. + Local Emissão
Nº Contribuinte
TI2007/08 MEA_12
Associação
Representa uma interligação relevante entre entidades do
sistema
•Uma associação pode ser:
–Binária• Relaciona duas entidades entre si
–Unária• Relaciona uma entidade consigo própria
Nome da associação
7
TI2007/08 MEA_13
Associação Binária
• Exemplo
– Uma associação que relaciona “Empregado” com “Departamento” pode representar:
• Os empregados afectos a um departamento
• A que departamento está afecto um empregado
Departamento EmpregadoTem afecto
TI2007/08 MEA_14
Associação Unária
• Exemplo
– Uma associação que relacione a entidade“Empregado” consigo própria assente no conceitochefe/subordinado, sendo garantido que:
• nem todos os empregados têm chefe
• um chefe pode ter mais do que um subordinado
Empregado
Responsável por
8
TI2007/08 MEA_15
Graus de uma Associação
A cada extremo de uma associação correspondem dois graus:
•Inferior• Número mínimo possível de ocorrências (“0” ou “1”)
•Superior• Número máximo possível de ocorrências (“1” ou “N”)
Cliente FacturaTem
Inferior
Cliente FacturaTem
Superior
TI2007/08 MEA_16
Grau de uma Associação
• Exemplo
• Um departamento tem afectos vários empregados
(eventualmente só um ou mesmo nenhum), e um
empregado está obrigatoriamente afecto a apenas um e
um só departamento
Departamento EmpregadoAfecto
9
TI2007/08 MEA_17
Entidade Associativa
• Existem situações em que as associações têmatributos próprios– Exemplo
• Uma associação que relacione fornecedor com produto, para além de indicar quais os fornecedores de um produtoe quais os produtos fornecidos por um fornecedor, poderátambém conter o preço pelo qual um fornecedor fornece
esse produto.
• Neste caso, a associação será “promovida” a entidade e e staé referida por “ Entidade Associativa ”
Fornecedor LinhaCatálogo
ProdutoPertence Refere
TI2007/08 MEA_18
Entidades versus Associações
Para distinguir Entidades de Associações podemos
socorrer-nos do vocabulário utilizado pelas
organizações
Geralmente utilizam-se:
– Substantivos - para referenciar Entidades
– Verbos - para referenciar Associações
10
TI2007/08 MEA_19
Definições versus Conteúdo
Estamos perante:
– Uma entidade ARMAZÉM com 2 ocorrências, e uma entidade
PRODUTO com 5 ocorrências
– Uma associação ARMAZENA com 3 ocorrências
Definição:
Produto 1
Armazém 1
Armazém 2
Armazém
Conteúdo:
Armazém ProdutoArmazena
Produto
Produto 2
Produto 3
Produto 4
Produto 5
TI2007/08 MEA_20
Notação
Conceito Representação
Entidade
Associação
EntidadeAssociativa
Nome
11
TI2007/08 MEA_21
Método de Construção do Modelo EA
Etapa 1 - Pesquisar Entidades e Atributos
Etapa 2 - Identificar Associações
Etapa 3 - Pesquisar Entidades Associativas
Etapa 4 - Validar o Modelo Global Encontrado
TI2007/08 MEA_22
Tipificação das Entidades
Para melhor identificar as ENTIDADES vamos começar por efectuar
alguma tipificação suplementar (notar que as ENTIDADESASSOCIATIVAS já constituem uma 1ª tipificação do conceito geral
de ENTIDADE).
Para uma melhor compreensão utilizaremos um modelo simplificado
de um Sistema de Gestão de Alunos de uma Universidade
Etapa 1 - Pesquisar Entidades e Atributos
12
TI2007/08 MEA_23
Entidades Fundamentais
São as Entidades Estruturantes ou Básicas para o sistema em
análise.
Ex:
Aluno Curso Disciplina
Etapa 1 - Pesquisar Entidades e Atributos
TI2007/08 MEA_24
Entidades Descodificadoras
São Entidades cuja existência apenas se justifica pela
necessidade de Descodificação.
As Entidades Fundamentais só “dependem” das Entidades Descodificadoras e estas
não dependem de quaisquer Entidades, excepto eventualme nte de outras
Descodificadoras
SexoSexo
Código_S
Designação_S
Identificador
Código_S
Etapa 1 - Pesquisar Entidades e Atributos
M – MasculinoF - Feminino
Ex:
13
TI2007/08 MEA_25
Entidades Atributivas
São Entidades cuja existência apenas se justifica pela
necessidade de utilização de atributos repetitivos, p. ex. TELEFONE de um ALUNO, e pelo facto do modelo relacion al,
que irá suportar a respectiva base de dados, não aceitar este
tipo de atributos (ver-se-á posteriormente que violam a 1 ª
Forma Normal).
As Entidades Atributivas não podem existir independentem ente
da respectiva Entidade Fundamental (no caso ALUNO) e do seuidentificador faz parte o identificador daquela.
Etapa 1 - Pesquisar Entidades e Atributos
TI2007/08 MEA_26
Entidades Atributivas (Cont.)
Ex:Aluno Telefone_
AlunoAluno
Número
BI
Local_de_emissão_BI
Data_Nascimento
Morada
…...
Identificadores
Número
BI+ Local_de_emissão_BI
Telefone_Aluno
Número_Aluno
N_Telefone
Identificador
Número_Aluno+ N_Telefone
Etapa 1 - Pesquisar Entidades e Atributos
14
TI2007/08 MEA_27
Como distinguir Entidades e Atributos?
As ENTIDADES são caracterizadas através de vários descr itores ,
contrariamente aos ATRIBUTOS.
Se, para além do identificador, existe pelo menos um des critor para
caracterizar um objecto então trata-se de uma ENTIDADE.
Se, pelo contrário, apenas existe um identificador , então estamos perante
um ATRIBUTO.
Ex: Considere-se o conceito “Sexo”. Se o pretendemos codificar, como aliás
deve ser feito, criamos uma Entidade Descodificadora Sexo, cujo Identicador é
Cod_Sexo e que conta com o Descritor “Designação”. Caso contrário “Sexo”
entendido como “Designação_Sexo” é um atributo de Aluno.
Etapa 1 - Pesquisar Entidades e Atributos
TI2007/08 MEA_28
Como encontrar Associações?
Etapa 2 - Pesquisar Associações
É frequente que em qualquer conjunto coerente de informaç ão cada
entidade esteja relacionada com quase todas as outras.
Não é, contudo, desejável/conveniente contemplar todas as associações
possíveis no nosso modelo de dados.
Deve-se procurar identificar as associações que :
– sejam intrínsecas ao sistema
– sejam importantes em função das necessidades de tra tamento
15
TI2007/08 MEA_29
Atribuir Nomes às Associações?
Um nome sugere uma direcção na associação, mas as associa ções
são, por natureza, bidireccionais.
Na atribuição de nomes às Associações alguns problemas se podem
colocar.
Ex:
Deve, sempre que possível, utilizar-se verbos na sua for ma mais
sugestiva.
Aluno Telefone_Aluno
Tem Afecto?
Está Afecto?
Etapa 2 - Pesquisar Associações
TI2007/08 MEA_30
Etapa 3 - Pesquisar Entidades Associativas
Aluno Aprovação Disciplina
Nesta fase de construção do Diagrama Entidade-Associaçã o, é útil
identificar quais as associações que têm atributos própri os que
explicitem a sua natureza.
Ex:
“Aprovação” para além de associar Aluno com Disciplina, tem
atributos próprios tais como a classificação e a data da aprovação do
Aluno na Disciplina
16
TI2007/08 MEA_31
Etapa 4 - Validação do Modelo Global
O Diagrama EA deve ser validado de modo a:
– Eliminar possíveis erros de interpretação;
– Representar a realidade de forma conveniente, face à f orma
como os dados vão ser utilizados.
TI2007/08 MEA_32
Etapa 4 - Validação do Modelo Global
Orientações para a validação
Por vezes, entre duas entidades, existem associações com
diferentes significados, que não são contempladas na anál ise.
Deve ser analisada cuidadosamente a semânticadas associações!
17
TI2007/08 MEA_33
Etapa 4 - Validação do Modelo Global
Os Alunos relacionam-se com Disciplinas de várias form as:
– Inscrevem-se em Disciplinas;
– Obtêm aprovação em Disciplinas.
Assim sendo, a Associação anterior não permite represen tar as duas
formas de relacionamento das duas Entidades
Aluno Disciplina
TI2007/08 MEA_34
Etapa 4 - Validação do Modelo Global (Cont)
Para permitir resolver a situação são necessárias duas
Associações: uma que represente a Inscrição e outra a
Aprovação. Vimos atrás que a Aprovação adquire o estatut o de
Entidade Associativa por dispôr de atributos próprios.
O modelo que resolve a semântica é o seguinte:
Aluno Aprovação Disciplina
Está inscrito
18
TI2007/08 MEA_35
Cadeira de Tecnologias de Informação
Ano lectivo 2007/08
Prof. Mário Caldeira
Profª Ana Lucas
Dr. Fernando Naves
Engª Winnie Picoto
Engº Luis Vaz Henriques
Dr. José Camacho
Transformação do Modelo EA num Conjunto de Tabelas
TI2007/08 MEA_36
Empregado (Nº_Empregado , Nome,......…, Cod_dept ,......)
Nome da Tabela Identificador Restantes AtributosPróprios da Tabela
Representação
Identificadores de Outras Tabelascom as quais esta se Relaciona
19
TI2007/08 MEA_37
Cada Entidade dá normalmente origem a uma tabela, com:
• Identificador da Entidade Chave da Tabela
• Descritores da Entidade Outros Atributos da Tabela
• Identificadores de outras Entidades que eventualmente lh e
estejam associadas Chaves Estrangeiras
Entidades
TI2007/08 MEA_38
Associações 1:N
Esta situação é representada por duas tabelas, uma para cad a entidade.
DEPARTAMENTO (Cod_Dept , Designação, ......)
EMP (Nº_Emp, Nome, ......, Cod_Dept)
DEPARTAMENTO EMPREGADO
Trabalha
Associações Binárias
20
TI2007/08 MEA_39
São um caso particular das associações 1:N
Associações 1:1
Para representar esta situação são necessárias duas tabel as, uma para cada
entidade
Caso uma das entidades seja não obrigatória, colocar o id entificador dessa
entidade na tabela correspondente à entidade obrigatória
EMPREGADO (Nº_Emp , Nome, ......)
AUTOMÓVEL (Matrícula , Marca, ........, Nº_Emp)
EMPREGADO AUTOMÓVELutiliza
Associações Binárias
TI2007/08 MEA_40
Associações M:N
Independentemente das obrigatoriedades, esta situação é sempre representada
por três tabelas, uma para cada entidade e uma para a assoc iação.
FORNECEDOR (Cod_Forn , Nome, ......)
PRODUTO ( Cod_Prod , Designação, ...... )
FORNECE ( Cod_Forn, Cod_Prod )
FORNECEDOR PRODUTOfornece
Associações Binárias
21
TI2007/08 MEA_41
Associações 1:N
Esta situação é representada por uma única tabela,
EMPREGADO (Nº_Emp , Nome, ......,Nº_Emp_Chefe)
EMPREGADO
chefia
Associações Unárias
Representação Idêntica à das Associações Binárias 1:N
TI2007/08 MEA_42
Esta situação é representada por uma única tabela.
PILOTO (Nº_Piloto , Nome, ...... , Nº_COMANDANTE)
Associações 1:1
Piloto
Co-piloto
Associações Unárias
São, tal como nas Associações Binárias, um caso particul ar das
Associações Unárias 1:N
22
TI2007/08 MEA_43
Associações M:N
Independentemente das obrigatoriedades, esta situação é sempre representada por
duas tabelas, uma para a entidade, outra para a associaç ão.
PEÇA (Cod_Peça , ......)
ESTRUTURA ( Cod_Peça_Pai, Cod_Peça _Filho )
PEÇA
estrutura
Associações Unárias
TI2007/08 MEA_44
Cadeira de Tecnologias de Informação
Ano lectivo 2007/08
Prof. Mário Caldeira
Profª Ana Lucas
Dr. Fernando Naves
Engª Winnie Picoto
Engº Luis Vaz Henriques
Dr. José Camacho
NormalizaNormaliza ççãoão de de TabelasTabelas
23
TI2007/08 MEA_45
Após a construção do modelo comceptual dos dados (Model oEntidade/Associação) é feita a transformação para o mod elo lógico(Esquema de Tabelas).
O Desenho de Tabelas obtido representa a estrutura dainformação de um modo natural e completo.
Mas terá o mínimo de redundância possível ?
A Normalização tem como objectivo avaliar a qualidade do Desenho de Tabelas e transformá-lo (em caso de necessi dade) num Desenho (Conjunto de Tabelas) equivalente, menosredundante e mais estável.
Normalizar Porquê ?
TI2007/08 MEA_46
Etapas
ModeloEA
TabelasNão
Normalizadas
1ª FormaNormal(1FN)
2ª FormaNormal(2FN)
3ª FormaNormal(3FN)
EliminarGrupos deAtributos
Repetitivos
EliminarDependências
Funcionais (DF´s)Parciais
EliminarDF´s
Transitivas
24
TI2007/08 MEA_47
Exemplo
Numa Escola, pretende-se manter informação sobre:
– os Estudantes da escola (nº interno, nome e curso a quepertencem);
– as Disciplinas que são ministradas na escola (nº disciplin a e nome);
– os Professores contratados pela escola (código, nome e gr auacadémico);
– Inscrições dos Alunos em Disciplinas;
– Notas obtidas pelos alunos nas disciplinas em que estãoinscritos.
TI2007/08 MEA_48
Uma Relação está na 1ª Forma Normal (1NF) se não contém grupos de atributos repetitivos
Uma Relação está na 1ª Forma Normal (1NF) se não contém grupos de atributos repetitivos
Definição de 1ª FORMA NORMAL
Dado que as Tabelas são estruturas bidimensionais, entã o no cruzamento de uma linha com uma coluna (atributo) só é pos sívelarmazenar valores atómicos.
25
TI2007/08 MEA_49
Relação Não Normalizada
Esta Tabela foi desenhada para representar Inscriçõese Aprovaçõesde Alunos em Disciplinas. Cadaestudante está inscrito e/ou já foi aprovado em várias disciplinas, com a informação correspondente. Assim, temos um grupo de atributos repetitivo :
NºDisciplina, NomeDisciplina, Cod.Professor, Nome Professor, CategoriaProfessor, Nota
Relação NOTAS
Dados em forma tabular, conforme são visualizados peloutilizador.
NºEstudante
NomeEstudante
CursoNº
DisciplinaNome
DisciplinaCod
ProfessorNome
Professor Nota
21934 Antunes Informática 04 Álgebra 21 Gil Alves 1514 Análise Sist. 87 Ana Lopes -23 Progr.Linear 43 Paulo Pinto 16
42346 Bernardo Matemática 08 Topologia 32 Nuno Neves 1004 Álgebra 21 Gil Alves -12 Geometria 21 Gil Alves 1816 Lógica 32 Nuno Neves 13
54323 Correia Estatística 04 Álgebra 21 Gil Alves 1108 Topologia 32 Nuno Neves 10
... ... ... ... ... ... ... ...
CategoriaProfessor
PAPCASAEPAPAAEPAAE...
TI2007/08 MEA_50
NºEstudanteNomeEstudante
CursoNºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor Nota
NºEstud. NomeEstudante Curso
21934 Antunes Informática42346 Bernardo Matemática54323 Correia Estatística
... ... ...
Chave
Relação ESTUDANTENºEstudante
NºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor Nota
21934 04 Álgebra 21 Gil Alves 1514 Análise Sist. 87 Ana Lopes 1223 Progr.Linear 43 Paulo Pinto 16
42346 08 Topologia 32 Nuno Neves 1004 Álgebra 21 Gil Alves 1212 Geometria 21 Gil Alves 1816 Lógica 32 Nuno Neves 13
54323 04 Álgebra 21 Gil Alves 1108 Topologia 32 Nuno Neves 10
... ... ... ... ... ...
2193421934
423464234642346
54323
Chave Relação NOTAS
1ª Forma Normal
26
TI2007/08 MEA_51
– REMOÇÃO
Se quisermos apagar a informação sobre todos os alunosaprovados ou inscritos numa determinada disciplina, entã operdemos toda a informação dessa disciplina e do respect ivoprofessor.
– ACTUALIZAÇÃO
Se pretendermos modificar o nome de uma disciplina (por e xemploÁlgebra passa a Álgebra e Aplicações) é necessário perco rrer toda a tabela e fazer essa modificação para todos os alunos inscri tos ouaprovados nessa disciplina;
No caso de falhar a aplicação de modificação em alguma o corrência, então teríamos dados inconsistentes .
1ª FORMA NORMAL
Problemas na relação NOTAS
TI2007/08 MEA_52
Por vezes, dois atributos (ou dois grupos de atributos) e stãointrinsecamente ligados entre si.
Ex:
Nº Cliente Nome Cliente
Num determinado instante, em qualquer ponto da B.D. ond e figuremestes dois atributos, a um mesmo nº de cliente corresponderánecessáriamente o mesmo nome (*)
(*) Note que o inverso poderá não ser verdade!
Dependências Funcionais
27
TI2007/08 MEA_53
Nº Cliente Nome Cliente
Diz-se então que Nome Cliente "depende " de NºCliente
ou que NºCliente " identifica " Nome Cliente
Isto é
Existe uma
Dependência Funcionalentre aqueles atributos
Dependências Funcionais
TI2007/08 MEA_54
Uma relação está na 2ª Forma Normal se está na primeira e se todos os atributos descritores dependerem da totalidade do identificador (e não apenas de parte dele).
Uma relação está na 2ª Forma Normal se está na primeira e se todos os atributos descritores dependerem da totalidade do identificador (e não apenas de parte dele).
Definição de 2ª FORMA NORMAL
28
TI2007/08 MEA_55
Chave
Os atributosNome Disciplina, Cod-Professor, Nome-Professor e Categoria-Professor dependem apenas do atributoNº Disciplina (que está estritamentecontido na chave da tabela)
NºEstudante
NºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor Nota
21934 04 Álgebra 21 Gil Alves 1514 Análise Sist. 87 Ana Lopes 1223 Progr.Linear 43 Paulo Pinto 16
42346 08 Topologia 32 Nuno Neves 1004 Álgebra 21 Gil Alves 1212 Geometria 21 Gil Alves 1816 Lógica 32 Nuno Neves 13
54323 04 Álgebra 21 Gil Alves 1108 Topologia 32 Nuno Neves 10
... ... ... ... ... ...
2193421934
423464234642346
54323
CategoriaProfessor
PAPCASAEPAPAAEPAAE...
Relação NOTAS
Dependências Parciais
TI2007/08 MEA_56
NºEstudante
NºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor
Nota
NºEstudante
NºDisciplina Nota
21934 04 1514 1223 16
42346 08 1004 1212 1816 13
54323 04 1108 10
... ... ...
2193421934
423464234642346
54323
NºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor
04 Álgebra 21 Gil Alves14 Análise Sist. 87 Ana Lopes23 Progr.Linear 43 Paulo Pinto08 Topologia 32 Nuno Neves12 Geometria 21 Gil Alves16 Lógica 32 Nuno Neves... ... ... ...
Chave e atributos quedependem da totalidade desta Atributos que dependem de parte da
chave mais a referida parte da chave
CategoriaProfessor
PAPCASAEPAAE...
CategoriaProfessor
Relação NOTA
Relação DISCIPLINA
2ª Forma Normal
29
TI2007/08 MEA_57
Uma relação está na 3ª Forma Normal se está na 2ªForma Normal e se não existirem atributos descritor es a dependerem funcionalmente de outros atributos descritores (não identificadores) - Dependências Transitivas.
Assim sendo, cada atributo deve depender apenas do Identificador da Tabela
Uma relação está na 3ª Forma Normal se está na 2ªForma Normal e se não existirem atributos descritor es a dependerem funcionalmente de outros atributos descritores (não identificadores) - Dependências Transitivas.
Assim sendo, cada atributo deve depender apenas do Identificador da Tabela
Definição de 3ª FORMA NORMAL
TI2007/08 MEA_58
NºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor
04 Álgebra 21 Gil Alves14 Análise Sist. 87 Ana Lopes23 Progr.Linear 43 Paulo Pinto08 Topologia 32 Nuno Neves12 Geometria 21 Gil Alves16 Lógica 32 Nuno Neves... ... ... ...
CategoriaProfessor
PAPCASAEPAAE...
Os atributos Nome Professor e Grau Professor dependem do atributo Cod.Professor (que não é chave da tabela) e portantoNºDisciplina→Cod.professor, NºDisciplina→Nome.professor e NºDisciplina→Categoria.professor não DF´s são directas (diz-se então que são Transitivas).
Relação DISCIPLINASChave
Dependências Funcionais Directas
30
TI2007/08 MEA_59
NºDisciplina
NomeDisciplina
CodProfessor
04 Álgebra 2114 Análise Sist. 8723 Progr.Linear 4308 Topologia 3212 Geometria 2116 Lógica 32... ... ...
CodProfessor
NomeProfessor
21 Gil Alves87 Ana Lopes43 Paulo Pinto32 Nuno Neves... ...
Atributos que dependemdo atributo não chave +
esse atributo
NºDisciplina
NomeDisciplina
CodProfessor
NomeProfessor
CategoriaProfessor
CategoriaProfessor
PAPCASAE...
Relação DISCIPLINARelação PROFESSOR
Atributos que apenasdependem da chave
3ª Forma Normal
TI2007/08 MEA_60
1ª Forma Normal
Uma relação está na 1ª Forma Normal se e só se não contém atributos ou grupos de atributos repetitivos.
⇒ Cada linha de uma tabela tem um só valor para cada atributo.
Exemplo (dados referentes a uma encomenda de livros - estrutura não normalizada):
Pedido_Livro ( Nome-cliente, ISBN, Data-pedido, Título, Autor(es), Quantidade, Preço, Valor-total)
Na 1ª Forma Normal:
Pedido_Livro ( Nome-cliente, ISBN, Data-pedido, Título, Quantidade, Preço, Valor-total)
Autoria (ISBN, Autor)
Normalização - Exemplo
31
TI2007/08 MEA_61
2ª Forma Normal
Uma relação está na 2ª Forma Normal se está na primeira e se todos os atributos descritores dependerem da totalidade do identificador.
Exemplo (na 1ª FN):
Pedido_Livro ( Nome-cliente, ISBN, Data-pedido, Título, Quantidade, Preço,Valor-total)
Autoria (ISBN, Autor)
Aplicando a 2ª Forma Normal:
Pedido_Livro ( Nome-cliente, ISBN, Data-pedido, Quantidade, Valor-total)
Autoria (ISBN, Autor)
Livro (ISBN, Título, Preço)
Normalização - Exemplo
TI2007/08 MEA_62
3ª Forma Normal
Uma relação está na 3ª Forma Normal se está na 2ª Forma Normal e se não existirem atributos descritores a dependerem funcionalmente de outros atributos descritores (não identificadores).
Exemplo (na 2ª FN):
Pedido_Livro ( Nome-cliente, ISBN, Data-pedido, Quantidade, Valor-total)
Autoria (ISBN, Autor)
Livro (ISBN, Título, Preço)
Na 3ª Forma Normal:
Pedido_Livro ( Nome-cliente, ISBN, Data-pedido, Quantidade, Valor-total)
Autoria (ISBN, Autor)
Livro (ISBN, Título, Preço)
Normalização - Exemplo