oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães...

39
Fundamentos de bancos de dados Célio Cardoso Guimarães Modelagem, projeto e linguagem SQL Normalizac ¸ ˜ ao de BDs relacionais Motivac ¸ ˜ ao Esses conceitos te ´ oricos t ˆ em objetivos pr ´ aticos: projetar BDs possivelmente sem inconsist ˆ encias, com menos redund ˆ ancia de informac ¸ ˜ ao, determinar certos tipos de restric ¸ ˜ oes sobre atributos de uma relac ¸ ˜ ao, determinar as poss ´ ıveis chaves de uma relac ¸ ˜ ao. © Célio Cardoso Guimarães UNICAMP

Transcript of oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães...

Page 1: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LN

orm

aliza

cao

de

BD

sre

lacio

nais

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� �

Motiv

acao

Ess

es

conce

itos

teori

cos

tem

obje

tivos

pra

ticos:

pro

jeta

rB

Ds

poss

ivelm

ente

sem

inco

nsi

stencia

s,

com

menos

redund

anci

ade

info

rmacao,

dete

rmin

ar

cert

os

tipos

de

rest

ricoes

sobre

atr

ibuto

sde

um

are

lacao,

dete

rmin

ar

as

poss

ıveis

chave

sde

um

are

lacao.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 2: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LN

orm

aliza

cao

de

BD

sre

lacio

nais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �E

xem

plo

de

BD

rela

cionalnaonorm

alizada:

Fornecedores(numf,nome,end,tel,contato,

CNPJ,num-m

at,prazo,preco)

tem

um

alin

ha

para

cada

poss

ıvelm

ate

rialque

ofo

rnece

dor

forn

ece

,o

que

leva

apro

ble

mas:

redund

anci

a:

nom

e,

endere

co

eCNPJ

repetid

os

inum

era

sve

zes;

atu

aliz

acao:

endere

co

do

forn

ece

dor

muda

ealg

um

alin

ha

onde

ele

apare

cen

ao

eatu

aliz

ada;

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 3: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LN

orm

aliza

cao

de

BD

sre

lacio

nais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

inserc

ao

de

forn

ece

dor

sem

mate

riais

hom

olo

gados:

valo

resnulos

teri

am

que

ser

inse

ridos;

quando

mate

riais

fore

mhom

olo

gados,

alin

ha

com

ess

es

nulo

spoderi

ase

resq

ueci

da

na

tabela

;

rem

ocao

suce

ssiv

ade

mate

riais

forn

eci

dos:

pode

leva

ra

perd

aco

mple

tados

dados

do

forn

ece

dor.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 4: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LN

orm

aliza

cao

de

BD

sre

lacio

nais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Pro

ble

ma

basic

o:

atr

ibuto

sde

CE

sdis

tinto

sco

loca

dos

na

mesm

ata

bela

:F

orn

eci

mento

sde

mate

riais

com

atr

ibuto

sde

Forn

ece

dore

s.

Solu

cao:

elim

inar

info

rmacao

redundante

.

Cust

o:

pro

lifera

cao

de

tabela

s(c

om

menos

colu

nas)

epro

cess

am

ento

para

gera

rre

lato

rios

com

dados

de

div

ers

as

tabela

s.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 5: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LN

orm

aliza

cao

de

BD

sre

lacio

nais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Para

que

serv

ea

teori

a:

em

pro

jeto

stopdown:

pro

jeta

rdesd

eo

inıc

iota

bela

sse

mos

pro

ble

mas

cita

dos;

em

pro

jeto

sbottom

up:

corr

igir

maus

pro

jeto

s,decompondo

de

form

aapro

pri

ada

rela

coes

malprojetadas,

isto

e,naonorm

alizadas.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 6: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LO

co

nceit

od

ed

ep

en

den

cia

fun

cio

nal

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� �

Nota

cao:

Dado

oesq

uem

a

���

� �����

�� ,

letr

as

do

finaldo

alfa

beto

,X

,Y,Z

...

denota

rao

subco

nju

nto

sde

atr

ibuto

sde

R;

atr

ibuto

scom

post

os

com

o� A

,B� e

� B,A

� sao

identic

os

edenota

dos

por

AB

ou

BA

.

Definicao:Xdeterm

inafuncionalmente

Y(

)se

dadas

duas

tupla

sde

Rem

que

os

valo

res

de

Xsao

iguais

,enta

onece

ssa

riam

ente

os

valo

res

de

Yta

mb

em

sera

oig

uais

.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 7: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LO

co

nceit

od

ed

ep

en

den

cia

fun

cio

nal

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� �

Depend

enci

afu

nci

onale

um

apro

pri

edade

do

pro

jeto

da

base

de

dados,

isto

e,

da

sem

antic

ados

dados

arm

aze

nados

na

rela

cao.

Definicao:

� �

� �����

eum

achave

de

um

are

lacao

Rse

eso

mente

se:

(i)

� �

� �����

dete

rmin

afu

nci

onalm

ente

todos

os

outr

os

atr

ibuto

sde

R;

(ii)

nenhum

subco

nju

nto

de

� �

� �����

dete

rmin

afu

ncio

nalm

ente

os

atr

ibuto

sre

sta

nte

sde

R(m

inim

alid

ade).

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 8: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LO

co

nceit

od

ed

ep

en

den

cia

fun

cio

nal

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �Definicao:

Um

asuperchave

de

Re

um

subconju

nto

dos

atr

ibuto

sde

Rque

conte

mum

ach

ave

.

Toda

chave

eum

asu

perc

have

,m

as

nem

toda

superc

have

eum

ach

ave

!

(superc

have

spodem

viola

ra

part

e(ii)

da

defin

icao

de

chave

vist

aaci

ma).

Definicao:Atributonaoprimo(ANP)

-n

ao

est

aco

ntid

oem

nenhum

ach

ave

de

R.

Atributo

primo

eum

atr

ibuto

contid

oem

alg

um

ach

ave

de

R.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 9: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LR

eg

ras

de

infe

ren

cia

de

Arm

str

on

g

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

a1

Se

enta

o(regra

da

reflexividade)

a2

Se

enta

opara

qualq

uer

Z,

(regra

aumentativa)

a3

Se

eenta

o(regra

datransitividade)

As

regra

saci

ma

saosolidas:

so

leva

ma

deducoes

de

depend

enci

as

funci

onais

verd

adeiras;

saocompletas:

dado

um

conju

nto

de

dfs

Fvalid

as

para

R,perm

item

obte

rtodas

as

dfs

que

podem

ser

infe

ridas

apart

irde

Fe

tam

bem

valid

as

para

R.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 10: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LR

eg

ras

de

infe

ren

cia

de

Arm

str

on

g

� �� �� �� �� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� �A

sseguin

tes

regra

ssao

sim

ple

sde

pro

var:

Regra

dauniao:

see

enta

o

Pro

va:

por

a2,

e,

com

o,

por

a2,

logo

por

a3

eco

mo

,se

gue

ore

sulta

do

Regra

dadecom

posicao

:

Se

enta

oe

Apro

vase

gue

direta

mente

de

a1

()

seguid

ade

a3:

.Id

em

para

pro

var

Célio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 11: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LR

eg

ras

de

infe

ren

cia

de

Arm

str

on

g

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

As

regra

sde

unia

oe

deco

mposi

cao

nos

perm

item

pro

var:

Lem

a1:Regra

geraldauniao/decom

posicao

:

� �

� �����

� se

eso

mente

se

� ,

� ,..

.,

� ,

oque

nos

perm

itesi

mplifi

car

cert

as

pro

vas,

supondo

que

todas

as

dfs

sao

do

tipo

� ,onde

eum

atr

ibuto

sim

ple

sde

R;

ness

eca

so

diz

em

os

que

Fest

anaform

acanonica.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 12: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LR

eg

ras

de

infe

ren

cia

de

Arm

str

on

g

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Um

adf

do

tipo

� ,onde

Xco

nte

mm

ais

de

um

atr

ibuto

sim

ple

s,em

gera

ln

ao

pode

ser

decomposta

em

dfs

valid

as

com

menos

atr

ibuto

sa

esquerd

a!

As

regra

sde

infe

renci

ade

Arm

stro

ng

sao

ute

isem

dois

asp

ecto

spra

ticos:

1.

dadas

alg

um

as

dfs

valid

as

para

um

are

lacao

R,ela

snos

perm

item

desc

obri

routr

as

dfs

tam

bem

valid

as

para

R;

2.

ela

spodem

nos

aju

dar

adesc

obri

rum

aou

mais

chave

sde

um

are

lacao.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 13: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LR

eg

ras

de

infe

ren

cia

de

Arm

str

on

g

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Definicao:

Adf

obtid

apelo

axi

om

aa1

eta

mb

em

cham

ada

dedependenciafuncional

trivial

Cham

are

mos

denaotrivialt

oda

dfque

nao

etr

ivia

l.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 14: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LF

orm

as

no

rmais

(FN

)d

ere

lac

oes

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Sao

regra

scr

esc

ente

mente

rest

ritiv

as

para

esq

uem

as

de

rela

coesnorm

alizadas:

rela

coes

obedece

ndo

aF

Nn

deve

mobedece

ra

FN

n-

1,

mas

nao

vice

-vers

a.

Cada

form

anorm

almaisalta

elim

ina

anom

alia

sn

ao

cobert

as

pela

form

anorm

al

maisbaixa.

A1

aF

Ne

consid

era

da

com

oa

pro

pri

adefin

icao

do

MR

:nehum

are

lacao

poss

ui

atr

ibuto

sm

ulti

valo

rados

nem

rela

coes

anin

hadas.

Supore

mos

no

que

sese

gue,

que

todas

as

dfs

dadas

de

um

are

lacao

sao

nao

triv

iais

.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 15: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LS

eg

un

da

Fo

rma

No

rmal

� �� �� �� �� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� �Dependenciafuncionalparcial:

um

atr

ibuto

Aedependente

funcionalparcial

de

um

atr

ibuto

X,se

eexi

ste

um

subco

nju

nto

pro

pri

oY

de

X(ist

oe,

com

menos

atr

ibuto

sque

X)

talque

Def:

um

are

lacao

Rest

ana

2a

FN

senenhum

AN

Pde

Re

dependente

funci

onalparc

iald

equalq

uer

chave

de

R.

Pare

cecom

plic

ado,

mas

nao

e!

Exe

mplo

:

���� ��

���

��

�� ,pre

co,

endf)

,co

m

���

��

��

��� c

� �

��

���

nao

esta

na

2a

FN

.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 16: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LTerc

eir

aF

orm

aN

orm

al

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Dadas:

,,e

diz

em

os

que

“Zdepende

transi

tivam

ente

”de

X.

As

asp

as

sao

inte

nci

onais

:ess

etip

ode

depend

encia

transi

tiva

ein

dese

jave

l,pore

mo

requis

ito:

(Xnao

edependente

funci

onalde

Y)

eim

port

ante

:se

Xe

Yfo

rem

chave

sde

Re

Zfo

rum

outr

oatr

ibuto

qualq

uer

de

R,enta

o

,e

pois

,afinal,

Yta

mb

em

ech

ave

de

R

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 17: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LTerc

eir

aF

orm

aN

orm

al

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Def:

Resta

na

3a

FN

senenhum

AN

Pde

R“d

epende

transi

tivam

ente

”de

qualq

uer

chave

de

R.

Exe

mplo

:Funcionarios(numf,RG,nome,depto,

nomedepto)

numf

echave

pri

mari

a,RG

ech

ave

e

� ��� �

���

� ��� � e

um

adf

valid

a,

Rn

ao

est

ana

3a

FN

,pois

nom

edepto

eum

AN

Pque

“depende

transi

tivam

ente

”da

chave

num

f.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 18: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LTerc

eir

aF

orm

aN

orm

al

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Definic

ao

equiv

ale

nte

de

3a

FN

pore

mm

ais

faci

lde

veri

fica

r:

Um

are

lacao

Rest

ana

3a

FN

separa

toda

df

nao

triv

ial

,valid

apara

R,enta

oou

Xe

um

asuperc

have

de

Rou

Ye

um

atr

ibuto

pri

mo.

Teore

ma:

toda

rela

cao

que

est

ana

3a

FN

tam

bem

est

ana

2a

FN

.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 19: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LF

orm

aN

orm

ald

eB

oyce

Co

dd

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Def:

um

are

lacao

Rest

anaFNBC

separa

toda

dfn

ao

triv

ial,

,valid

apara

R,enta

oX

eum

asuperc

have

R.

num

are

lacao

naFNBC

,as

unic

as

depend

encia

sfu

nci

onais

nao

triv

iais

sao

deri

vadas

de

chave

sda

rela

cao.

Pro

jeto

topdown

de

rela

coes

norm

aliz

adas

segundo

aFNBC

:to

das

as

dfs

da

rela

cao

deve

mte

rum

ach

ave

do

lado

esq

uerd

o!

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 20: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

L3

aF

No

uFNBC

?

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� �

Exc

epcio

nalm

ente

nao

sepode

ter

todas

as

rela

coes

naFNBC

.E

xem

plo

class

ico:

Enderecos(Cidade,Rua,CEP),

com

dfs

:

� �� ���

e

� �� �

Eco

mum

num

sist

em

apost

al:

oparCidadeRua

“dete

rmin

a”

oCEP

,m

as

nenhum

dele

sdete

rmin

ao

CE

P,

dado

um

CE

P,a

Cid

ade

fica

dete

rmin

ada,

(mas

CE

Pn

ao

dete

rmin

aR

ua).

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 21: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

L

3a

FN

ou

Fo

rma

No

rmald

eB

oyce

Co

dd

?� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Com

o(CidadeRua)

ech

ave

da

rela

cao

Endere

cos,

ela

nao

est

anaFNBC

,pois

CE

Pn

ao

ech

ave

ou

superc

have

.

Efa

cild

em

onstr

ar

que

ela

nao

tem

outr

as

chave

s,

com

oC

idade

nao

eum

AN

P,

adf

� �� � nao

viola

a3

aF

N.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 22: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LQ

uart

afo

rma

no

rmal

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Ori

gem

:o

mapeam

ento

na

mesm

are

lacao

de

dois

ou

mais

atr

ibuto

sm

ulti

valo

rados

independente

sentr

esi

gera

redund

anci

as

indeseja

veis

.E

xem

plo

:

Livros(num

tombo,autores,assuntos),

onde

um

dado

livro

pode

ter

vari

os

auto

res

etr

ata

rde

vari

os

ass

unto

s.

Est

apro

pri

edade

ere

fletid

ana

chave

pri

mari

ada

rela

cao.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 23: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LQ

uart

afo

rma

no

rmal

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Por

exe

mplo

,poderı

am

os

ter

na

tabela

Liv

ros

seis

linhas

para

oliv

ro31416:

num

tom

bo

auto

res

ass

unto

s. . .

31416

Aho

alg

ori

tmos

31416

Aho

com

ple

xidade

31416

Aho

busc

a31416

Ullm

an

alg

ori

tmos

31416

Ullm

an

com

ple

xidade

31416

Ullm

an

busc

a

Liv

ros

esta

emFNBC

,m

as,

exi

ste

gra

nde

redund

ancia

:um

livro

com

kauto

res

em

ass

unto

s,poderi

ate

rk*

mlin

has

ness

are

lacao

ein

consis

tencia

spodem

oco

rrer.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 24: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LQ

uart

afo

rma

no

rmal

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Solu

cao

obvi

a:

deco

mpor

ata

bela

Liv

ros

em

duas

tabela

sLivros1

eLivros2:

Livros1(num

tombo,autores)

e,

Livros2(num

tombo,assuntos).

Apenas

cin

colin

has

vao

apare

cer

nas

duas

tabela

spara

oliv

ro31416.

Caso

gera

lde

um

livro

com

kauto

res

em

ass

unto

s:

ele

apare

ceri

ak

+m

veze

snas

duas

tabela

sem

vez

de

k*m

veze

s

Elim

inam

os

as

redund

anci

as:

um

auto

rapare

ceum

aso

vez

(para

um

dado

livro

),ass

imco

mo

um

ass

unto

.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 25: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LQ

uart

afo

rma

no

rmal

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� � � �� �

� �� �

� �� �� �� �� �� �� �� �� �� �

A4

aF

Nutil

iza

oco

nce

itodedependencia

(funcional)multivalorada.

Depend

enci

as

multi

valo

radas

exp

licita

ma

independ

encia

entr

eos

atr

ibuto

se

poss

uem

regra

sde

infe

renci

an

ao

obvi

as.

Toda

depend

enci

afu

nci

onale

tam

bem

um

adepend

encia

multi

valo

rada,

mas

nao

vice-v

ers

a.

Na

rela

cao

Liv

ros

aci

ma

terı

am

os

as

depend

enci

as

multi

valo

radas:

��

� ��

��� ��

��

e

��

� ��

������ �� .

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 26: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LC

on

tin

en

cia

de

form

as

no

rmais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Rela

coes

na

4a

FN

,ta

mb

em

est

ao

naFNBC

;por

sua

vez,

rela

coes

naFNBC

est

ao

em

3a

FN

eesta

s,por

sua

vez,

est

ao

na

2a

FN

;est

as

restr

icoes

sucess

ivas

podem

ser

visu

aliz

adas

assi

m:

4ª F

N

3ª F

N

2ª F

N

FN

BC

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 27: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Ori

gem

do

pro

ble

ma:

BD

conve

rtid

ase

mre

pro

jeto

de

modelo

nao

rela

cionalpara

um

SGBD

rela

cional;

conve

nie

nte

norm

alizar

as

rela

coes

da

BD

;

opro

cess

oco

rresp

onde

aum

pro

jeto

bottom

up

ou

deanalise

da

BD

;

implic

aem

decompor

rela

coes

nao

norm

aliz

adas

em

rela

coes

menore

snaFNBC

;

nao

triv

ial:

tabela

sest

ao

pre

ench

idas

de

dados;perdadeinform

acao

poderi

aoco

rrer.

Na

verd

ade,

oque

pode

oco

rrer

ea

intr

oducao

de

info

rmacao

esp

uri

a;

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 28: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� �

Oque

signifi

cadecompor

um

are

lacao?

Exe

mplo

:dada

um

are

lacaoR(A,B,C)

com

um

adepend

enci

afu

nci

onal

:

quere

mos

deco

mpor

Rem

duas

rela

coes

com

atr

ibuto

s(A

,B

)e

(B,C

);

vam

os

faze

rduas

pro

jecoes

de

R:

um

anas

colu

nas

Ae

Be

outr

anas

colu

nas

Be

C;

dada

ain

sta

nci

ade

Ra

seguir

:

� ���

���

��

���

��

� ���

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 29: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �

adeco

mposic

ao

leva

aduas

rela

coes

� e� :

�����

��

� � �

���

���

� � �

e,

�� ���

��

� ���

��

��

� ���

esp

era

mos

agora

que

R’s

eja

recu

pera

da

pela

juncao

����

� ;no

enta

nto

:

����

� � � � � � � � �

���

��

���

��

����

� �����

���

��

����

� �����

���

��

� � � � � � � � �

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 30: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �O

resu

ltado

ein

ace

itave

l,o

que

nos

leva

ao

conce

itode

deco

mposi

coesnaoaditivas

ou

semperda

(em

ingle

slossless

):

ela

sn

ao

adic

ionam

nova

stu

pla

squando

sefa

za

juncao

das

rela

coes

deco

mpost

as.

Um

adeco

mposi

cao

valid

an

ao

deve

jogar

fora

atr

ibuto

sda

rela

cao

ori

gin

ale,

em

gera

ltera

atr

ibuto

sco

muns

nas

rela

coes

deco

mpost

as;

ela

deve

tam

bem

gara

ntir

que

as

dfs

ori

gin

ais

seja

mpreservadas

isto

e,

poss

am

todas

ser

infe

ridas

apart

irdas

dfs

pre

sente

snas

rela

coes

deco

mpost

as.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 31: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Ate

ori

ae

rela

tivam

ente

com

ple

xa[U

llman88]:

apre

senta

rem

os

um

resu

ltado

mate

matic

oque

pode

ser

usado

de

form

asi

mple

sna

pra

tica:

ote

ore

ma

ase

guir

diz

que

um

adeco

mposi

cao

ace

itave

le

sem

pre

poss

ıvel:

Teorema3:

“Toda

rela

cao

Robedece

ndo

aum

conju

nto

de

dfs

Fe

que

nao

est

eja

na

3a

FN

,possu

ium

adeco

mposi

cao

em

rela

coes

obedece

ndo

a3

aF

N,

nao

aditi

vae

que

pre

serv

adfs

.”

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 32: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� � � �� �� �� �

� �� �� �� �� �� �� �� �� �� �A

lgori

tmo

que

resu

ltado

Teore

ma

3:

1.Obtenhaumacobertura

mınima

��

� deF.

2.Se

��

� contem

umadfondeaparecem

todososatributosdeR,entaoRjaestaem

3aFN(fim

doalgoritmo).

3.CrieumadecomposicaodeRcontendo

umarelacaopara

cadadf

de

��

contendoosatributosXeA(porem,se

� �

� �����

� ,simplifique,criandoumaunicarelacaoS

com

esquema

��

� �

� �����

�� .

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 33: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

4.Seadecomposicaoobtidanaocontem

nenhumarelacaocom

umachave

deR,entao

acrescente

umarelacaocontendoumachave

deR.

Na

maio

ria

dos

caso

s,as

rela

coes

obtid

as

por

este

alg

ori

tmo

tam

bem

est

ara

onaFNBC

.

Veja

mos

ase

guir

um

exe

mplo

:

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 34: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Consi

dere

oesq

uem

aa

seguir

de

um

aB

Dde

Liv

ros,

onde

um

livro

pode

ter

div

ers

os

auto

res:

L(num

tombo,tıtulo,autor,anoed,editora,

endeditora,preseditora,endpreseditora)

���

� ��

��

� �� � �

��

� ��

����� �

��

� ��

�� �

� ��� �

�� �

� ���

����� �

� ��� �

�� �

� ���

������ �

� ��� �

������ �

� ���

��������� �

� ����

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 35: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LD

eco

mp

osic

ao

de

rela

co

es

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

num

tombo

todos

os

atr

ibuto

sde

Lexc

eto

auto

r;

enta

oo

parnum

tombo,autor

ech

ave

de

L;

facil

pro

var

que

Fe

um

conju

nto

min

imalde

dfs

;

logo,

podem

os

usa

rF

para

deco

mpor

Lem

:

L1(num

tombo,tıtulo,anoed,editora),

L2(editora,endeditora,preseditora),

L3(preseditora,endpreseditora).

Com

oa

chave

de

Ln

ao

apare

cena

deco

mposi

cao,

acr

esc

enta

mos

are

lacao:

L4(num

tombo,autor)

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 36: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LC

on

sid

era

co

es

pra

ticas

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Norm

alizacaoate

ofim

nao

eum

are

gra

invi

ola

vel.

Caso

sem

que

nao

eapro

pri

ada:

sea

tabela

Funci

on

ari

os

poss

uin

atr

ibuto

s,poderı

am

os

deco

mp

o-la

em

n-1

tabela

s,cada

um

acom

dois

atr

ibuto

s:a

chave

pri

mari

ae

um

outr

oatr

ibuto

;

opro

jeto

resu

ltante

est

aemFNBC

ena

4a

FN

,m

as

eum

pess

imo

pro

jeto

:

poss

uin-1

tabela

sdesn

ece

ssari

as,

torn

ando

muito

inefic

iente

sco

nsu

ltas

egera

cao

de

rela

tori

os

envo

lvendo

vari

os

atr

ibuto

sde

um

funci

on

ari

o.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 37: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LC

on

sid

era

co

es

pra

ticas

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

em

cert

os

caso

spode-s

ete

rum

are

lacao

viola

ndo

a3

aF

N;

ata

bela

Funci

on

ari

os

serv

epara

ilust

rar

oponto

:

oendere

co

do

funci

on

ari

oin

cluir

ua,

num

ero

,bairro

,ci

dade

eC

EP

;

CE

Pe

dete

rmin

ado

pelo

satr

ibuto

sante

riore

s:lo

go,

nao

deve

ria

ser

atr

ibuto

da

rela

cao;

pore

m,

qualq

uer

consu

lta/re

lato

rio

envo

lvendo

oendere

co

gera

lmente

requer

oC

EP

;se

ata

bela

estiv

ess

enorm

aliz

ada

seri

apre

cis

oum

aju

ncao

cara

com

um

ata

bela

(muito

gra

nde)

de

CE

Ps!

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 38: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LC

on

sid

era

co

es

pra

ticas

fin

ais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

Cuid

ados

no

pro

jetotopdown:

especifi

que

as

rela

coesmestre

da

sua

BD

:

para

cada

um

adela

sve

rifiq

ue

sea

chave

pri

mari

adete

rmin

afu

nci

onalm

ente

todos

os

outr

os

atr

ibuto

s,

eque

ha

apenas

depend

enci

as

funci

onais

envo

lvendo

chave

s;

cert

ifique-s

ede

que

todos

os

atr

ibuto

sde

um

are

lacao

sao

realm

ente

dela

,pro

cura

ndo

dfs

entr

eatr

ibuto

sque

nao

sao

chave

s;

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP

Page 39: oessobre - Instituto de Computaçãocelio/inf325-2011/slides/Cap5.pdfCélio Cardoso Guimarães Fundamentos de bancos de dados Modelagem, projeto e linguagem SQL Normalizac¸ ˜aodeBDsrelacionais

Fu

nd

am

en

tos d

eb

an

co

s d

e d

ad

os

lio

Ca

rdo

so

Gu

ima

rãe

s

Mo

dela

gem

, p

roje

to e

lin

gu

ag

em

SQ

LC

on

sid

era

co

es

pra

ticas

fin

ais

� �

� �� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �

� �

� �� �

� �� �

� �� �

� �

� �

� �

� �

� �

� �

� �� �

� �

� �

� �� �

� �� �

� �

mapeie

os

rela

cionam

ento

sN

:N

em

rela

coes,

especi

ficando

sua

chave

pri

mari

ae

seus

atr

ibuto

s;

quando

todas

as

suas

rela

coes

est

ivere

mnaFNBC

(exc

epci

onalm

ente

na

3a

FN

),ve

rifiq

ue

sen

ao

ha

viola

cao

da

4a

FN

:se

houve

r,deco

mponha

as

rela

coes

infr

ato

ras

de

form

aapro

pri

ada,

deix

ando

apenas

um

atr

ibuto

multi

valo

rado

em

cada

rela

cao.

Opro

jeto

topdown

eobvi

am

ente

pre

ferı

velao

pro

jeto

bottom

up.

© C

élio

Card

oso G

uim

arã

es

UN

ICA

MP