Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
DependnciaFuncionale Normalizao
Renata Lcia Mendona Ernesto do Rgo renatalucia@dase.cefetpe.br
Normalizao
Tcnica de anlise e organizao de dados que visa determinar a melhor composio paraumaestruturadedados. Osprincipaisobjetivosdessatcnicaso:
Eliminar anomalias que dificultam as operaes de insero, atualizao e remoo sobre os dados. Minimizar as redundncias e os conseqentes riscosdeinconsistncias.
Considereosesquemasderelaes:
EMP_DEPT: enome,cpf,datanasc,endereco,dnumero,dnome, dcpfgerente EMP_PROJ: ssn,pnumero,horas,enome,pnome,plocalizacao
Anomalias de Atualizao
Inserirumnovoempregado
Inserirumnovodepartamento
Anomalias de Atualizao
Inserirumnovoempregado
Inserirumnovodepartamento
Anomalias de Atualizao
AnomaliasdeExcluso:
AnomaliasdeAtualizao:
Formasnormais
Uma forma normal uma regra que deve ser obedecida por uma tabela para que ela seja consideradabemprojetada. Asprincipaisformasnormaisso: 1formanormal 2formanormal 3formanormal FormaNormaldeBoyceCodd 4formanormal
1FormaNormal
1FormaNormal
A 1aFN estabelece que o domnio de um atributo deve incluir apenas valores atmicos (nicos, indivisveis) e que o valor de qualquer atributo em uma tupla deve ser um valor nico do domnio daqueleatributo.
1FormaNormal
Exemplo:Tabelanonormalizada
DEPARTAMENTO
CodDept 10 20 30
1FormaNormal
PassagemPrimeiraFormaNormal:
Dadosexternostabelaaninhadasorepetidos.
1FormaNormal
DecomposiodeTabelas:
1) Criar uma tabela na 1FN contendo apenas as colunas comvaloresatmicos.Achaveprimriadestatabela idnticaachavedatabelanonormalizada. 2) Criar uma tabela na 1FN para cada tabela aninhada compostapelasseguintescolunas:
Chaveprimriadatabelaprincipal. Ascolunasdaprpriatabelaaninhada.
1FormaNormal
DEPARTAMENTO
CodDept 10 20 30 Nome Vendas Marketing Finanas Gerente 1234 2222 1456
LOCALIZAO
CodDept Localizao 10 10 20 20 20 30 Recife C.Grande Recife Macei RiodeJaneiro Recife
1FormaNormal
Departamento(CodDept,Nome,Gerente,{Localizao})
Dependnciafuncional
Emumatabelarelacional,dizsequeuma coluna C2 depende funcionalmente de uma coluna C1 (C1 determina a coluna C2 ou C1 C2) quando, em todas as linhas da tabela, para cada valor de C1 queaparecenatabela,apareceomesmo valordeC2.
Dependnciafuncional
... Categoria C1 C2 C1 C2 C2 ... Salrio 1000 3000 1000 3000 3000
CategoriaSalrio
2FormaNormal
2FormaNormal
2FormaNormal
Uma dependncia funcional parcial ocorre quando uma coluna depende apenas de parte de uma chave primria composta. Tabelas cujas chaves primrias NO so compostas e esto na 1FN tambm se encontramna2FN.
2FormaNormal
Exemplo:Tabelanonormalizada
PROJEMP
CodProj 1 1 3 1 2 3 2
Cat 1 3 2 2 1 1 2
Horas 24 18 24 18 24 18 12
2FormaNormal
Exemplo:Tabelanonormalizada
ProjEmp(CodProj,CodEmp,Nome,Cat,Sal,DataIni,TempAl)
2FormaNormal
Para passar a tabela para a 2FN, devese mover os atributos no chave que dependem apenas de parte da chave primria para outra tabela.
A chave primria da nova tabela criada constituda pela parte da chave primria da tabela original que determinante das colunas movidas.
2FormaNormal
ProjEmp(CodProj,CodEmp,Nome,Cat,Sal,DataIni,TempAl)
ProjEmp(CodProj,CodEmp,DataIni,TempAl) Emp(CodEmp,Nome,Cat,Sal)
3FormaNormal
Uma tabela encontrase na 3aFN quando, alm de estar na 2aFN, todo atributo no chave depende diretamente da chave primria, isto , quando no h dependncias funcionais transitivasouindiretas.
Dependnciafuncional transitiva
Uma dependncia funcional transitiva ouindiretaacontecequandoumacoluna no chave primria depende funcionalmente de outra coluna ou combinao de colunas no chave primria.
3FormaNormal
Exemplo:Tabelanonormalizada
EMP
CodEmp 1111 1234 4567 7890 5544 7174
Cat 1 3 2 2 1 1 3
6543
3FormaNormal
dependnciafuncional transitiva
Emp(CodEmp,Nome,Cat,Sal)
3FormaNormal
Para passar a tabela para a 3aFN, devese mover os atributos no chave que dependem de outro atributo no chave (dependncia transitiva) para outratabela. A chave primria da nova tabela criada constituda pela coluna da tabela original da qual hadependnciaindireta.
3FormaNormal
Emp(CodEmp,Nome,Cat,Sal)
Emp(CodEmp,Nome,Cat) Cat(Cat,Sal)
At agora: 2FN e 3FN desaprovam as dependncias parciais e transitivas na chave primria. Definiesgerais:Consideramtodasaschaves candidatasdeumarelao. Obs.: Atributo Primrio: atributo que faz parte dequalquerchavecandidata.
2FormaNormal
Um esquema de relao R est na segunda forma normal (2FN) se cada atributo no primrio A de R no for parcialmente dependentedenenhumachavedeR.
2FormaNormal
DependnciaParcial
ID_PROPRIEDADE MUNICIPIO
N_LOTE
REA
PREO
IMPOSTO
2FormaNormal
Decomposio:
ID_PROPRIEDADE MUNICIPIO
N_LOTE
REA
PREO
MUNICIPIO
IMPOSTO
3FormaNormal
Um esquema de relao R est na terceira forma normal (3FN) se todo atributo no primrio de R apresentar as seguintes condies: Terdependnciafuncionaltotalparatodasas chavesdeR.
3FormaNormal
DependnciaTransitiva
ID_PROPRIEDADE MUNICIPIO
N_LOTE
REA
PREO
3FormaNormal
Decomposio:
ID_PROPRIEDADE MUNICIPIO
N_LOTE
REA
REA
PREO
Anicadiferenaentrea3FNeaBCNFque aBCNFnopermitequeAsejaprimrio.
N_LOTE
REA
Considere:
N_LOTE
REA
PassagemBCNF:
ID_PROPRIEDADE
N_LOTE
REA
MUNICIPIO
REA
Dependncia Multivalorada
Considereodiagramaabaixo:
Um empregado pode usar todos os equipamentos dos projetos em que ele trabalha.
Dependncia Multivalorada
Umatabelaparacadaentidade. Umatabelaparaosrelacionamentosproj_empeproj_eq: Observe: O fato de o projeto '1' usar o equipamento '2' est representadotrsvezes!
Atabelaestna3FN
Dependncia Multivalorada
Paraevitarestetipoderedundnciadedados, necessrioconsideraraquartaformanormal. A 4FN baseiase no conceito de dependncia multivalorada. Sempre que dois relacionamentos 1:N independentessomisturadosemumamesma relao,umaDMVpodeaparecer.
Dependncia Multivalorada
Umacolunaouconjuntodecolunasdependemulti valoradamente de uma coluna (determinante) da mesma tabela quando um valor do atributo determinante identifica repetidas vezes um conjuntodedevaloresnacolunadependente.
CodProjCodEmp CodProjCodEquip
Passagem4FN:
(a)
X Y X Y
pea_nome