Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Aula06-BD1 - Normalização, Slides de Introdução a Banco de Dados

Aula 06 da disciplina de banco de dados I

Tipologia: Slides

2019
Em oferta
30 Pontos
Discount

Oferta por tempo limitado


Compartilhado em 12/09/2019

acauan-ribeiro-8
acauan-ribeiro-8 🇧🇷

5

(2)

6 documentos

1 / 38

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
DCC502 - BANCO DE DADOS I
Prof. Msc. Acauan C. Ribeiro
Aula 07 - Normalização
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
Discount

Em oferta

Pré-visualização parcial do texto

Baixe Aula06-BD1 - Normalização e outras Slides em PDF para Introdução a Banco de Dados, somente na Docsity!

DCC502 - BANCO DE DADOS I

Prof. Msc. Acauan C. Ribeiro

Aula 07 - Normalização

Roteiro

● Normalização

● Formas normais

● Dependência funcional

● 1FN

● 2FN

● 3FN

● BCNF

Normalização - Introdução

Existe algum problema com essa tabela?

Resp: SIM! contém informações sobre os empregados e os cursos que eles frequentaram e a chave primária para esta tabela terá de ser uma combinação entre EmpID e Curso

Normalização - Introdução ● (^) Redundâncias em uma tabela podem resultar em erros e inconsistências, quando o usuário tentar atualizar os dados na tabela. ● (^) São três os tipos de erros: ○ (^) Erros de inserção – caso se pretenda inserir um novo empregado na tabela EMPREGADO, como a chave é Emp_ID e Curso, só é possível efetuar a inserção se ambas existirem; ○ (^) Erros de remoção – se, p.ex., os dados do empregado 140 for apagado da tabela, também se perde a informação sobre o curso que esse empregado frequentou. Será que é isso que se pretende? ○ (^) Erros de modificação – imagine que o empregado 100 tem um aumento de salário. Então esse aumento tem de ser registrado em cada uma das linhas em que a existem ocorrências desse empregado. Não é muito prático, certo?

Normalização - Conceito O conceito de Normalização tem por base esta explicação e a capacidade de gerar relações bem estruturadas. O processo de normalização é dirigido pela informação referente às dependências funcionais e às chaves dos esquemas de relações. É um processo de análise e adequação dos esquemas de relações com o objetivo de minimizar redundâncias e anomalias de inserção, exclusão e alteração.

Normalização - Conceito ainda

Formas Normais ● A forma normal de uma relação é a mais alta forma normal cujas condições são atendidas pela relação. ● A forma normal de um projeto de banco de dados é aquela referente à sua relação em mais baixa forma normal. (Pelo menos a 3FN ou a BCNF) ● Considerar apenas as formas normais não garante que o projeto de banco de dados está bom. É ainda preciso considerar algumas propriedades adicionais...

Formas Normais ● O processo de normalização estudado será realizado por meio de decomposições das relações (em relações menores). ● Essa decomposição deve: ○ garantir a propriedade de junção sem perdas; ○ procurar preservar as dependências funcionais. Propriedade necessária Propriedade desejável

Dependência funcional O Modelo Relacional pegou emprestado da teoria de funções da matemática o conceito de dependência funcional. Iremos utilizar então a teoria de funções para explicar a dependência funcional do Modelo Relacional. Considerando os seguintes conjuntos:

Dependência funcional Observe que existe uma dependência entre os valores dos conjuntos, que pode ser expressa pela função f(x) = x + 10 , ou seja, y é função de x, ou seja, y = f(x) = x + 10. Esta dependência, esta função pode também ser expressa através do gráfico do lado direito:

Regras para encontrar Dependências

Funcionais

1. Separação A -> BC então A -> B e A -> C Exemplo: CPF -> nome, endereço então CPF -> nome e CPF -> endereço Leia o exemplo acima da seguinte maneira: Se com um número de CPF eu encontro o nome e o endereço de uma pessoa, então com este mesmo número eu posso encontrar apenas o nome e com este mesmo número eu posso encontrar apenas o endereço.

Regras para encontrar Dependências

Funcionais

2. Acumulação A -> B então AC -> B Exemplo: CPF -> endereço então CPF, idade -> endereço Leia o exemplo acima da seguinte maneira: Se com um número de CPF eu encontro o endereço de uma pessoa, então com este mesmo número mais a idade da pessoa eu posso encontrar o endereço também.

Regras para encontrar Dependências

Funcionais

4. Pseudo-Transitividade A -> B e BC -> D então AC -> D Exemplo: CPF -> código-funcionário e código-funcionário, mês -> salário- funcionário então CPF, mês -> salário-funcionário Leia o exemplo acima da seguinte maneira: Se com um número de CPF eu encontro o código do funcionário, e com o código do funcionário mais um certo mês eu encontro o salário que ele recebeu naquele mês, então com o número do CPF mais um certo mês eu posso encontrar o salário que ele recebeu naquele mês.

FORMAS NORMAIS O conceito de normalização foi introduzido por E. F. Codd em 1972. Inicialmente Codd criou as três primeiras formas de normalização chamando-as de: primeira forma normal (1NF), segunda forma normal (2NF) e terceira forma normal (3NF). Uma definição mais forte da 3NF foi proposta depois por Boyce-Codd, e é conhecida como forma normal de Boyce-Codd (FNBC). OBS: existem ainda os conceitos de 4FN e 5FN