Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Este captulo mede formalmente por que um conjunto de agrupamentos de atributos em esquemas de relao melhor que outro.
dos atributos; Reduo de valores redundantes nas tuplas; Reduo de valores null nas tuplas; Impedimento para a gerao de valores ilegtimos nas tuplas.
de uma tabela possuem algum significado no mundo real; Diretriz 1 para os projetos de BD:
Modelar um esquema de relao de modo que seja fcil explicar seu significado; No combine os atributos de diferentes tipos entidades e relacionamentos dentro de uma nica relao.
Mistura atributos de entidades distintas do mundo real; EMP_DEPT mistura os atributos de empregados e departamentos; e EMP_PROJ, os atributos de empregados e projetos.
Anomalias de insero
No
slide 08, qual anlise pode ser feita caso ocorra uma nova insero de um novo empregado que trabalhe no departamento 05?
Como
10
Anomalias de excluso
Se
apagar o empregado James Borg, ter alguma conseqncia negativa para o banco?
11
Anomalias de atualizao
O
que deve ser feito se for resolvido alterar o gerente do departamento de nmero 5?
Dever alterar todos os registros que contm o departamento 5.
Diretriz
2:
12
Evitar criar tabelas em que pode existir muitos atributos com valor null. O null pode ser interpretado como:
Que o atributo no se aplica tupla; O valor do atributo para a tupla desconhecido; O valor conhecido, mas ausente; Evitar uso de atributos em uma relao cujos valores freqentemente possa ser null. Se forem inevitveis, tenha certeza de que eles se aplicam somente em casos excepcionais e no na maioria das tuplas da relao.
Diretriz 3:
13
Exemplo
Tenho
que inserir o atributo NRO_ESCRITORIO na tabela empregado. Mas apenas 10% dos empregados possuem escritrios particulares. E agora, o que fazer?
14
Normalizao de relaes
Usada
15
Normalizao de relaes
1FN 2FN 3FN Forma
normal de Boyce-Codd
16
Dependncia Funcional
Um
atributo B possui uma dependncia funcional do atributo A se, para cada valor do atributo A, existe exatamente um nico valor do atributo B; representada por A B; Exemplo: CPF Nome
123 111 121 Carlos Maria Pedro Ana
17
222
Dependncia Funcional
Observe
que existe um dependncia entre os valores dos conjuntos, ou seja, nome funo do CPF, se eu estiver com numero do CPF, poderei encontrar o nome da pessoa correspondente; Dependncia expressa por: CPF Nome; Leia da seguinte maneira:
18
com um nmero de CPF posso encontrar nome da pessoa, ou nome depende da funcionalidade do CPF.
nicos valores de atributos permitidos pela 1FN so valores nicos; impedido a criao de atributos multivalorados, compostos e combinaes entre eles; Exemplo no prximo slide.
19
20
o atributo DLOCALIZACOES e criar uma nova tabela; Ampliar a chave para dlocalizacao, conforme figura no prximo slide; Supondo que existe at 3 localizaes, criar DLOCALIZACAO1, DLOCALIZACAO2 e DLOCALIZACAO3
21
22
23
pnumero} horas
Dependncia funcional total (no so assegurados SSN HORAS nem PNUMERO HORAS)
{ssn,
pnumero} enome
24
Definio: um esquema de relao R est na 2FN se todo atributo no primrio A em R tem dependncia funcional total da chave primria de R.
Exemplo
A relao EMP_PROJ est na 2FN?
25
2FN
Para
passar para a 2FN, os atributos no primrios s estaro associados parte da chave primria com a qual possuem dependncia funcional total.
26
27
28
Baseado no conceito de dependncia transitiva; A dependncia SSN DGERSSN transitiva para DNUMERO em EMP_DEPT, pois SSN DNUMERO e DNUMERO DGERSSN e DNUMERO no nem uma chave primria nem um subconjunto da chave de EMP_DEPT
29
dependncia de DGERSSN para DNUMERO indesejvel, uma vez que DNUMERO no chave de EMP_DEPT; Definio: est na 3FN se satisfazer a 2FN e se nenhum atributo no primrio de R for transitivamente dependente da chave primria.
30
31
Um esquema de relao R est na 2FN se cada atributo no primrio A de R no for parcialmente dependente de nenhuma chave de R; Exemplo: Na fig. que segue, considere as chaves candidatas NUM_ID_PROPRIEDADE e {MUNICIPIO_NOME, NUM_LOTE}. Suponha que existam as dependncias DF3 e DF4.
32
Significado: o preo de um lote determinado por sua rea, independentemente do municpio a que ele pertena
Normalizao na 2FN
33
esquema de relao R est na 3FN sempre que uma dependncia funcional X A for determinada em R qualquer
(a) (b)
Um esquema de relao R est na 3FN se todo atributo no primrio de R apresentar ambas as seguintes condies: Ter dependncia funcional total para todas as chaves de R; No ser transitivamente dependente de nenhuma chave de R.
34
DF4 em Lotes1 viola a 3FN porque AREA no uma superchave, e PRECO no um atributo primrio de Lotes1.
35
36
proposta como uma forma mais simples de 3FN; Considerada mais rgida que a 3FN; Toda relao que est na BCNF est na 3FN, porm o contrrio pode no ser verdade.
37
Considere a relao LOTES1A; Existem milhares de lotes dentro da relao, mas somente dois municpios: Dekalb e Fulton; reas de Dekalb: 0.5, 0.6, ..., 1.0 acres; reas de Fulton: 1.1, 1.2, ..., 2.0 acres; Isso gera a DF5: AREA MUNICIPIO_NOME; Adicionando s outras dependncias, LOTES1A ainda estaria na 3FN pois MUNICIPIO_NOME um atributo primrio.
38
DF5
39 39
Em uma relao separada R(AREA, MUNICIPIO_NOME), teriam 16 tuplas possveis; Isso reduziria a redundncia que ocorreria em LOTES1A; Logo a BCNF uma forma normal mais forte que desaprova LOTES1A e sugere a necessidade de decomp-la; Definio: a mesma que a 3FN, com exceo da condio (b)
40
41
Exemplo (1/2)
Est na 3FN? SIM Est na BCNF? NO
Quais so as DF?
42
43