Você está na página 1de 3

Fundamentos de Bases de Dados

Tópico 3 - Actividade Formativa 3.2

Leia o 7º Capítulo, Relational Database Design, Projecto de Bases de Dados


Relacionais, do livro adoptado e responda às seguintes questões acerca de Formas
Normais e Dependências Funcionais

1) Formas Normais: crie uma base de dados normalizada na 3ª forma para registo e
emissão da seguinte factura.
Resposta:
Factura ( nº_factura, data_factura, cliente, nif, morada, pago, *(quantidade, produto,
preço, valor), total_bruto, desconto, IVA, total)

Retirar dados derivados:


valor = quantidade*preço
Total_bruto = ∑ valor
Tota l= Total_bruto*(1+IVA)*(1-desconto)

Factura (nº_factura, data_factura, cliente, nif, morada, pago, *(quantidade, produto,


preço), desconto, IVA)

1ª forma normal: retirar dados repetidos


Factura (nº_factura, data_factura,cliente, nif, morada, pago, desconto, IVA)
Linha_factura (quantidade, produto, preço)

2ª forma normal: retirar dependências parciais das chaves


Factura (nº_factura, data_factura,cliente, nif, morada, pago, desconto, IVA)
Linha_factura (quantidade, produto)
Produtos (produto, preço)

3ª forma normal: retirar transitividade


Factura (nº_factura -> data_factura, cliente, pago, desconto, IVA)
Cliente (cliente-> nif, morada)
Linha_factura (quantidade, produto->_)
Produtos (produto-> preço)
2) Dependências Funcionais
Dado o conjunto de dependências funcionais F ={ a->bc, b->c, a->b, ab->c}encontre a
cobertura canónica, utilizando as rotinas da bibliografia de David Maier do Capítulo 5.

Resposta:
Não redundante
b->c
a->b
Reduzido à esquerda
b->c
a->b

Você também pode gostar