Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem...

40
Conceito de Chave Composta • Combinação de dois ou mais campos que têm altas chances de serem chaves: Matr Nome Endereco 1531 5 Judson 1123 9 Angeli ca 2421 7 Amanda Codigo Nome Carga_Horaria A-100 POO 22 B-100 ED 35 C-100 Compilado res 65 Aluno Disciplina Matr_Alun o Codigo_Disci plina Data_Matricu la 15315 A-100 12/03/201 0 11239 B-100 12/03/201 0 24217 C-100 12/03/201 Matricula

Transcript of Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem...

Page 1: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Conceito de Chave Composta

• Combinação de dois ou mais campos que têm altas chances de serem chaves:

Matr Nome Endereco

15315 Judson

11239 Angelica

24217 Amanda

Codigo Nome Carga_Horaria

A-100 POO 22B-100 ED 35C-100 Compiladores 65

Aluno Disciplina

Matr_Aluno Codigo_Disciplina Data_Matricula

15315 A-100 12/03/2010

11239 B-100 12/03/2010

24217 C-100 12/03/2010

24217 A-100 12/03/2010

Matricula

Page 2: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Normalização

Profa. Angélica Félix de Castro

Page 3: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

3

Consistência de Dados

• Controlar a construção do sistema através da criação de tabelas segundo regras que garantam a manutenção de certas propriedades.

• As tabelas que atendem a um determinado conjunto de regras, diz-se estarem em uma determinada forma normal.

Page 4: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Normalização • Processo de definir o formato lógico adequado para as

estruturas de dados

• Objetivo de minimizar o espaço utilizado pelos dados e garantir a integridade e confiabilidade das informações

• Evita redundância

• Possibilita maior desempenho do BD

• A normalização é feita, através da análise dos dados que compõem as estruturas utilizando o conceito chamado "Formas Normais (FN)".

Page 5: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Normalização • As FN são conjuntos de restrições nos quais os dados

devem satisfazê-las.

• Exemplo: pode-se dizer que a estrutura está na primeira forma normal (1FN), se os dados que a compõem satisfizerem as restrições definidas para esta etapa.

• A normalização completa dos dados é feita, seguindo as restrições das três formas normais existentes, sendo que a passagem de uma FN para outra é feita tendo como base o resultado obtido na etapa anterior, ou seja, na FN anterior.

• Para realizar a normalização dos dados, é primordial que seja definido um campo chave para a estrutura, campo este que permite irá identificar os demais campos da estrutura. Formas Normais existentes:

Page 6: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Primeira Forma Normal

Consiste em retirar da estrutura os elementos repetitivos, ou seja, aqueles dados que podem

compor uma estrutura de vetor. Podemos afirmar que uma estrutura está normalizada

na 1FN, se não possuir elementos repetitivos.

Page 7: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Primeira Forma Normal

• Estrutura original:– Tabela Projetos (Cod_Proj, Tipo, Descricao, Empresa

• (onde para cada Empresa temos: Id_Emp, Nome, Categoria, Salario, data_inicio)

Analisando a estrutura acima, observamos que existem várias empresas no campo Empresa, sendo portanto

elementos repetitivos que deverão ser retirados.

Page 8: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Proj* Tipo Descricao Empresa

Cod_Emp

Nome Categoria Salario Data_inicio

LSC001 RH Sistema RH 2191 Maria A1 4.000,00 01/05/2003

4112 João B1 9.000,00 04/01/2001

6126 José B1 9.000,00 1/11/2002

PAG004 Est Estoque 2191 Maria A1 4.000,00 01/07/2007

Page 9: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Primeira Forma NormalEstrutura na primeira forma normal (1FN):

Duas tabelas: Projeto e Projeto_Empregado, onde a segunda tabela (Projeto_Empregado) tem que possuir uma chave estrangeira vinda da primeira tabela (Projeto).

Page 10: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Proj* Tipo Descricao Empresa

Cod_Emp

Nome Categoria Salario Data_inicio

LSC001 RH Sistema RH 2191 Maria A1 4.000,00 01/05/2003

4112 João B1 9.000,00 04/01/2001

6126 José B1 9.000,00 1/11/2002

PAG004 Est Estoque 2191 Maria A1 4.000,00 01/07/2007

Page 11: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Proj* Tipo Descricao

LSC001 RH Sistema RH

PAG004 Est Estoque

Cod_Proj* Cod_Emp* Nome Categoria Salario Data_inicio

LSC001 2191 Maria A1 4.000,00 01/05/2003

LSC001 4112 João B1 9.000,00 04/01/2001

LSC001 6126 José B1 9.000,00 1/11/2002

PAG004 2191 Maria A1 4.000,00 01/07/2007

Projeto

Projeto_Empregado

Page 12: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Segunda Forma Normal

Uma relação está na 2FN se, e somente se:• Estiver na 1FN

• entidades que tem chaves compostas, os campos não-chave precisam depender de toda a chave. Se algum campo depende apenas de parte da chave, então é necessário desmembrá-lo

Page 13: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Proj* Cod_Emp* Nome Categoria Salario Data_inicio

LSC001 2191 Maria A1 4.000,00 01/05/2003

LSC001 4112 João B1 9.000,00 04/01/2001

LSC001 6126 José B1 9.000,00 1/11/2002

PAG004 2191 Maria A1 4.000,00 01/07/2007

Tabela Projeto_Empregado

Dependência Parcial

Page 14: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Proj* Cod_Emp* Nome Categoria Salario Data_inicio

LSC001 2191 Maria A1 4.000,00 01/05/2003

LSC001 4112 João B1 9.000,00 04/01/2001

LSC001 6126 José B1 9.000,00 1/11/2002

PAG004 2191 Maria A1 4.000,00 01/07/2007

Segunda Forma Normal:Duas novas tabelas:

Da 1 FN: Projeto (Cod_Proj, Tipo, Descricao)

Da 2 FN: Projeto_empregado (Cod_Proj, Cod_Empr, Data_inicio)

Da 2 FN: Empregado (Cod_Emp, Nome, Categoria, Salario)

Page 15: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Terceira Forma Normal

Uma tabela está na 3FN, se e somente se:• Estiver na 2FN

• se os campos não-chave são dependentes de outro campo não-chave, é necessário desmembrar em outra entidade

Page 16: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Emp* Nome Categoria Salario

2191 Maria A1 4.000,00

4112 João B1 9.000,00

6126 José B1 9.000,00

2191 Maria A1 4.000,00

Tabela Empregado: Dependência Transitiva

Page 17: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Cod_Emp* Nome Categoria Salario

2191 Maria A1 4.000,00

4112 João B1 9.000,00

6126 José B1 9.000,00

2191 Maria A1 4.000,00

Terceira Forma Normal:Duas novas tabelas:

Da 1 FN: Projeto (Cod_Proj, Tipo, Descricao)

Da 2 FN: Projeto_empregado (Cod_Proj, Cod_Empr, Data_inicio)

Da 3 FN: Empregado (Cod_Emp, Nome, Categoria)

Da 3 FN: Categoria (Categoria, Salario)

Page 18: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Tabela Inicial X NormalizaçãoCod_Proj* Tipo Descricao Empresa

Cod_Emp

Nome Categoria Salario Data_inicio

LSC001 RH Sistema RH 2191 Maria A1 4.000,00 01/05/2003

4112 João B1 9.000,00 04/01/2001

6126 José B1 9.000,00 1/11/2002

PAG004 Est Estoque 2191 Maria A1 4.000,00 01/07/2007

Da 1 FN: Projeto (Cod_Proj, Tipo, Descricao)

Da 2 FN: Projeto_empregado (Cod_Proj, Cod_Empr, Data_inicio)

Da 3 FN: Empregado (Cod_Emp, Nome, Categoria)

Da 3 FN: Categoria (Categoria, Salario)

Page 19: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Mais exemplos de Normalização...

Page 20: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

20

Formas NormaisPrimeira Forma Normal

Uma relação está na 1a. forma normal quando todos os seus atributos são atômicos-monovalorados (não permite tabelas aninhadas).

Page 21: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

21

Formas NormaisPrimeira Forma Normal

Atributos multivalorados

Nome Idade DataNasc Telefone

Quantos números de telefone?

Page 22: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

22

Formas NormaisPrimeira Forma Normal

Atributos multivalorados

Nome Idade DataNasc Telefone

Nome Idade DataNasc fone1 fone2 fone3

Se forem 3 números

Page 23: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

23

Formas NormaisPrimeira Forma Normal

Atributos multivalorados

Nome Idade DataNasc Telefone

Nome Idade DataNascNome Telefone

Se forem muitos números

Page 24: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

24

Formas NormaisSegunda Forma Normal

Uma relação está na 2a. forma normal quando: está na 1a. F.N. e; entidades que tem chaves compostas, os campos

não-chave precisam depender de toda a chave. Se

algum campo depende apenas de parte da chave,

então é necessário desmembrá-lo

Page 25: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

25

Formas NormaisSegunda Forma Normal

Número turma

Sigla Número -HorasSala

Sigla Número-Horas

Número, Sigla Sala, Número-Horas

Page 26: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

26

Formas NormaisSegunda Forma Normal

Número turma

Sigla Número -HorasSala

Número turma

Sigla Sala Sigla Número-Horas

Page 27: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

27

Formas NormaisSegunda Forma Normal

Evita:

• Inconsistências devido a duplicidade de informações

• Perda de dados em operações de remoções / alteração na relação

Page 28: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

28

Segunda Forma NormalNúmero turma

Sigla Número-HorasHorário

DC1221

2

10:00

14:00

8:00

15:00

16:00

1

2

1

2

2

2

4

3

DC134

DC122

DC189

DC189

Sigla Número-Horas

Número,Sigla Horário, Número-HorasValores Inconsistentes

Page 29: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

29

Segunda Forma NormalNúmero turma

Sigla Número-HorasHorário

DC1221

2

10:00

14:00

8:00

15:00

16:00

1

2

1

2

2

2

4

3

DC134

DC122

DC189

DC189

Se não houver turmas de uma determinada disciplina em um semestre,

perde-se a informação sobre oNúmero de Horas!!!

Page 30: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

30

Formas NormaisTerceira Forma Normal

Uma relação está na 3a. Forma normal

quando: Está na 2a. F.N. e; se os campos não-chave são dependentes de

outro campo não-chave, é necessário

desmembrar em outra entidade.

Page 31: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

31

Formas NormaisTerceira Forma Normal

Número Sigla Sala Prédio

Número, Sigla Sala

Sala Prédio

Page 32: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

32

Formas NormaisTerceira Forma Normal

Número Sigla Sala Prédio

Número, Sigla Sala Sala Prédio

Número Sigla Sala Sala Prédio

Page 33: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Terceira Forma Normal

Valores Inconsistentes!!!!!

Número, Sigla Sala

Sala Prédio

Número Sigla PrédioSala

DC1021

2

3

4

12

4

12

1

2

1

E1

C2

E1

C2

C2

DC155

DC102

DC104

DC155

Page 34: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

34

Terceira Forma NormalNúmero Sigla PrédioSala

DC1021

2

3

4

12

4

12

1

2

1

E1

C2

E1

C2

C2

DC155

DC102

DC104

DC155

Se não houver aula em uma determinada sala nessesemestre perde-se a informação sobre qual prédio

contém a tal sala.

Page 35: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Vamos tentar praticar um pouco...Vamos tentar praticar um pouco...

Page 36: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Esta tabela não está na 1FN!

O que é preciso fazer?

Page 37: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Uma possível tabela, com a respectiva chave primária: Alunos-Disciplinas (IdAluno, Nome, Morada, IdDisciplina,

Disciplina, IdProfessor, Professor)

Page 38: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

Segunda Forma Normal (2FN)Segunda Forma Normal (2FN)

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),

Disciplina, IdProfessor e Professor, que depende de outra parte da chave primária (IdDisciplina).

Tabelas na 2FN:Alunos (IdAluno, Nome, Morada) Alunos-Disciplinas (IdAluno, IdDisciplina)Disciplinas (IdDisciplina, Disciplina, IdProfessor, Professor)

Page 39: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

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.

Page 40: Conceito de Chave Composta Combinação de dois ou mais campos que têm altas chances de serem chaves: MatrNomeEndereco 15315Judson 11239Angelica 24217Amanda.

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)