@ rafael machado – 2004 e-mail: [email protected] access base de dados para a gestão de...
TRANSCRIPT
@ Rafael Machado – 2004e-mail: [email protected]
ACCESSACCESSBase de Dados para a Gestão de Base de Dados para a Gestão de
Informação de Natureza Informação de Natureza PedagógicaPedagógica
ACCESS – NormalizaçãoACCESS – Normalização
NormalizaçãoNormalização
É um processo que consiste em estruturar as tabelas e os atributos na forma mais adequada, do ponto de vista das operações a executar sobre a informação registada na base de dados, tendo em vista eliminar redundâncias desnecessárias e evitar problemas com a inserção, eliminação e actualização de dados.
Existem 3 Formas normais:
Primeira Forma Normal (1FN) Segunda Forma Normal (2FN) Terceira Forma Normal (3FN)
ACCESS – NormalizaçãoACCESS – Normalização
Primeira Forma Normal (1FN)Primeira Forma Normal (1FN) Uma tabela está na primeira forma normal (1FN)
quando todos os seus atributos são elementares. Não pode existir um conjunto de valores para um determinado atributo.
Exemplo: Registo da informação sobre alunos e respectivas disciplinas.
Esta tabela não está na 1FN!
ACCESS – NormalizaçãoACCESS – Normalização
Primeira Forma Normal (1FN)Primeira Forma Normal (1FN) Tabela na 1FN
Uma possível tabela, com a respectiva chave primária: Alunos-Disciplinas (IdAluno, Nome, Morada, IdDisciplina,
Disciplina, IdProfessor, Professor)
ACCESS – NormalizaçãoACCESS – Normalização
Primeira Forma Normal (1FN)Primeira Forma Normal (1FN) Problemas com a 1FN
A BD ocupa mais espaço em disco (redundância de informação)
Repetição da morada, disciplina, nome, …
Problemas de actualização Alteração da morada… inconsistência de informação
Problemas de inserção Inserir um aluno que não esteja matriculado a nenhuma
disciplina
Problemas de eliminação Anular matrícula.. Pode perder-se informação do aluno
ACCESS – NormalizaçãoACCESS – Normalização
Segunda Forma Normal (2FN)Segunda Forma Normal (2FN) Uma tabela está na segunda forma normal (2FN)
quando estiver na 1FN e os seus atributos que não fazem parte da chave primária dependerem funcionalmente da chave primária.
A tabela: Alunos-Disciplinas (IdAluno, Nome, Morada, IdDisciplina,
Disciplina, IdProfessor, Professor)não está na 2FN, pois os atributos Nome e Morada dependem de parte da chave primária (IdAluno), bem como o atributo Disciplina, IdProfessor e Professor, que depende de outra parte da chave primária (IdDisciplina).
Tabelas na 2FN:Alunos-Disciplinas (IdAluno, IdDisciplina)Alunos (IdAluno, Nome)Disciplinas (IdDisciplina, Disciplina, IdProfessor, Professor)
ACCESS – NormalizaçãoACCESS – Normalização
Terceira Forma Normal (3FN)Terceira Forma Normal (3FN) Uma tabela está na terceira forma normal (3FN)
quando estiver na 2FN e nenhum atributo que não seja parte da chave primária depender funcionalmente de outros atributos que não sejam parte da chave primária.
É necessário verificar, tabela a tabela: As tabelas seguintes já estão na 3FN:
Alunos-Disciplinas (IdAluno, IdDisciplina)Alunos (IdAluno, Nome)
A tabela seguinte não está na 3FN
Disciplinas (IdDisciplina, Disciplina, IdProfessor, Professor)
pois o atributo Professor depende funcionalmente de IdProfessor que não é um atributo que faça parte da chave primária.
ACCESS – NormalizaçãoACCESS – Normalização
Terceira Forma Normal (3FN)Terceira Forma Normal (3FN)
Desta forma, obtemos as seguintes tabelas normalizadas (3FN):
Alunos-Disciplinas (IdAluno, IdDisciplina)
Alunos (IdAluno, Nome)
Disciplinas (IdDisciplina, Disciplina, IdProfessor)
Professores (IdProfessor, Professor)
ACCESS – NormalizaçãoACCESS – Normalização
Modelo E-R SimplificadoModelo E-R Simplificado
ALUNOSN N
N
1 1
1
ALUNOS-DISCIPLINAS DISCIPLINAS
PROFESSORES
Regras:
Onde o atributo é Chave Primária, tem o grau 1.
Onde o atributo é Chave Externa, tem o grau N.
ACCESS – NormalizaçãoACCESS – Normalização
Exemplo de AplicaçãoExemplo de Aplicação
ALUNOS CADEIRAS CURSOS
PROFESSORESDEPARTAMENTOS
Pertence
Matricula
Classificação
Inscrição
Lecciona
Pertence
NN
NN
N
N
N
N11
1
1
ACCESS – NormalizaçãoACCESS – Normalização
Exemplo de AplicaçãoExemplo de Aplicação Considerando o diagrama E-R, apresentado no
diapositivo anterior, proceder à derivação das respectivas tabelas, à sua normalização e respectivo modelo E-R simplificado, , tendo em conta as seguintes entidades e respectivos atributos:
Alunos (CodAluno, Nome, Morada, FotoAluno)
Cursos (CodCurso, Curso)
Cadeiras (CodCadeira, Cadeira, Ano, Semestre)
Professores (CodProfessor, Professor)
Departamentos (CodDepartamento, Departamento)
ACCESS – NormalizaçãoACCESS – Normalização
ResoluçãoResolução Conjunto de Tabelas Normalizadas
Alunos (CodAluno, Nome, Morada, FotoAluno) Cursos (CodCurso, Curso) Cadeiras (CodCadeira, Cadeira, Ano, Semestre, CodProfessor,
CodCurso) Professores (CodProfessor, Professor, CodDepartamento) Departamentos (CodDepartamento, Departamento) Inscricao (CodAluno, CodCadeira) Classificacao (CodAluno, CodCadeira, Data , Classificacao) Matricula (CodAluno, CodCurso, DataMatricula)
ACCESS – NormalizaçãoACCESS – Normalização
Modelo E-R SimplificadoModelo E-R Simplificado