Vous êtes sur la page 1sur 9

TECNLOGO EM ANLISE E DESENVOLVIMENTO DE SISTEMAS

BANCO DE DADOS I
PROFA. CLEIANE GONALVES OLIVEIRA
ATIVIDADE 11
Normalizao
Questo 1
Para as relaes apresentadas a seguir, indique a forma normal em que cada uma delas se encontra.

a) Fatura = (NumFatura, CodCliente, NomeCliente, EndereoCliente, DataVenda, ValorTotalVenda)
2FN

b) Aluno = (Matrcula, Nome, CodDisciplina, NomeDisciplina, NumCreditosDisciplina, Nota)
1FN

c) OrdemDeCompra = (NmeroOrdem, DataEmisso, CodFornecedor, NomeFornecedor,
ValorTotalOrdem)
2FN

Questo 2
Aplicar as Formas Normais cabveis, nas questes abaixo. Voc deve transformar os esquemas abaixo
em conjuntos de esquemas que estejam na 2NF, 3NF.

a) Ordem_Compra (cd_ordem_compra, dt_emisso, cd_fornecedor, nm_fornecedor,
endereo_fornecedor, {cd_material, descrio_material, qt_comprada, vl_unitrio,
vl_total_item}, vl_total_ordem}).
1FN
Ordem_compra (cd_ordem_compra, dtemissao, cd_fornecedor, nm_fornecedor,
endereo_fornecedor, vl_total_ordem)
Itens_compra (cd_ordem_compra, cd_material, descrio_material, qt_comprada, vl_unitario,
vl_total_item )
2FN
Ordem_compra (cd_ordem_compra, dtemissao, cd_fornecedor, nm_fornecedor,
endereo_fornecedor, vl_total_ordem)
Itens_compra (cd_ordem_compra, cd_material, qt_comprada, vl_unitario, vl_total_item )
Material (cd_material, descrio_material)
3FN
Ordem_compra (cd_ordem_compra, dtemissao, cd_fornecedor, vl_total_ordem)
Fornecedor (cd_fornecedor, nm_fornecedor, endereo_fornecedor)
Itens_compra (cd_ordem_compra, cd_material, qt_comprada, vl_unitario, vl_total_item )
Material (cd_material, descrio_material)
Cd_material





b) Notas Fiscais (Num_NF, Srie, Data emisso, Cod. Cliente, Nome cliente, Endereo cliente,
CGC cliente, {Cdigo Mercadoria, Descrio Mercadoria, Quantidade vendida, Preo de
venda, Total da venda da Mercadoria}, Total Geral da Nota).
1FN
Notas Fiscais (Num_NF, Srie, Data emisso, Cod. Cliente, Nome cliente, Endereo cliente, CGC cliente,
Total Geral da Nota).
Itens_NF (Num_NF, Cdigo Mercadoria, Descrio Mercadoria, Quantidade vendida, Preo de venda,
Total da venda da Mercadoria)
2FN
Notas Fiscais (Num_NF, Srie, Data emisso, Cod. Cliente, Nome cliente, Endereo cliente, CGC cliente,
Total Geral da Nota).
Itens_NF (Num_NF, Cdigo Mercadoria, Quantidade vendida, Preo de venda, Total da venda da
Mercadoria)
Mercadoria ( Cdigo Mercadoria, Descrio Mercadoria)
3FN
Notas Fiscais (Num_NF, Srie, Data emisso, CodCliente, Total Geral da Nota).
Cliente (Cod. Cliente, Nome cliente, Endereo cliente, CGC cliente)
Itens_NF (Num_NF, Cdigo Mercadoria, Quantidade vendida, Preo de venda, Total da venda da
Mercadoria)
Mercadoria ( Cdigo Mercadoria, Descrio Mercadoria)


c) Inscrio (Cdigo do Aluno, Nome do Aluno, Telefone para contato, Ano de Admisso,
{Cdigo da Disciplina, Nome da Disciplina, Data da Matricula}).
{Codigo do Aluno, Codigo da Disciplina} -> Data da Matricula

1FN
Inscrio (Cdigo do Aluno, Nome do Aluno, Telefone para contato, Ano de Admisso).
TAB2(Codigo do Aluno, Cdigo da Disciplina, Nome da Disciplina, Data da Matricula)
2FN
Inscrio (Cdigo do Aluno, Nome do Aluno, Telefone para contato, Ano de Admisso).
TAB2(Codigo do Aluno, Cdigo da Disciplina, Data da Matricula)
Disciplina (Codigo da Disciplina, Nome da Disciplina)
3FN = 2FN


d) Paciente (num_paciente, nome_paciente, num_quarto, descrio_quarto,
num_cmodos_quarto, {cd_mdico, nome_mdico, fone_mdico}).

e) Encomendas (NmeroEncomenda, CdigoCliente, MoradaCliente, Produtos
(CdigoProduto, NomeProduto, ValorUnitrio), DataEncomenda

f) Livros (CdigoLivro, NomeLivro, AnoEdio, CdigoTipoLivro, DesignaoTipoLivro, Autores
(CdigoAutor, NomeAutor, Nacionalidade), CdigoEditora, NomeEditora, PreoLivro

g) Estufa( Cdigoestufa, DescrioEstufa, rea, Plantas (CdigoPlanta, DescrioPlanta,
DataPlantao, OrigemPlanta, LocalizaoPlanta, QuantidadePlantada, CuidadosEspeciais
(CdigoCuidadoEspecial, DescrioCuidadoEspecial, DuraoCuidadoEspecial))
Observao: a estrutura de dados referente a uma plantao, que contm vrias estufas. As
plantas que se encontram nas estufas apresentam cuidados especiais, que podero ser aplicados
em diferentes plantas em qualquer estufa.

h) Viagens (NmeroViagem, DestinoViagem, Confirmao (NmeroConf, DataConf,
CdigoCliente, NomeCliente, NmeroContrib), Transporte (CodTransporte, TipoTransporte,
DestinoTransporte), DataSada, DataChegada, CdigoMotorista, NomeMotorista

i) Federao (CdigoFederao, Designao, Morada, Telefone, CdigoPostal, Localidade,
OrgosSociais (CdigoOrgo, DescOrgo, NomeDirigente), Associaes (CdigoAssociao,
NomeAssociao, CdigoDistrito, NomeDistrito, Clubes (NomeClube, CdigoDiviso,
DesignaoDiviso)))
Um clube s pertence a uma associao e um rgo social ocupado por uma s pessoa.

j) Alugueis (NmeroCliente, NomeCliente, MoradaCliente, CdigoPostal, Localidade,
NmeroCartaConduo, Automvel (Matrcula, CdigoMarca, Marca, CdigoModelo,
Modelo, Ano, Cilindrada, Aluguel (DataIncio, DataFim, Desconto, CustoDia)))
Um automvel pode ser alugado por vrios clientes.

k) Pacientes (NmeroPaciente, NomePaciente, MoradaPaciente, CdigoPostal, Localidade,
TelefonePaciente, NmeroBeneficirio, Instituio, Mdico (CdigoMdico, NomeMdico,
MoradaMdico, NmeroTelemvel, NmeroConsultrio, Especialidades
(CdigoEspecialidade, DescrioEspecialidade)))
Um paciente pode consultar um mdico em diferentes especialidades.
PACIENTES

Questo 3
Para as situaes a seguir:
a) Em que forma normal encontra-se a tabela?
b) Caso a tabela no se encontre na 3FN, mostre a transformao da tabela para 3FN. Mostre
cada forma normal intermediria, entre aquela em que a tabela se encontra e a terceira forma
normal.

Situao 1
Trecho (CodEstrada, CodLocIni, CodLocFim, Distancia, NomeEstrada, NomeLocIni, SiglaUFIni,
NomeUFIni)

As dependncias funcionais que existem nesta tabela so as seguintes:
CodEst -> NomeEst
CodLocIni -> {NomeLocIni, SiglaUFIni, NomeUFIni}
SiglaUFIni -> NomeUFIni
{CodEst, CodLocIni, CodLocFim} -> Distancia

a) 1FN
b)
1FN
Trecho (CodEstrada, CodLocIni, CodLocFim, Distancia, NomeEstrada, NomeLocIni, SiglaUFIni,
NomeUFIni)
2FN
Trecho(CodEst, CodLocIni, CodLocFim,Distancia)
Estrada(CodEstrada, NomeEstrada)
Local(CodLocIni, NomeLocIni,SiglaUFIni, NomeUFIni)
3FN
Trecho(CodEst, CodLocIni, CodLocFim,Distancia)
Estrada(CodEstrada, NomeEstrada)
Local(CodLocIni, NomeLocIni,SiglaUFIni)
UF(SiglaUfIni, NomeUFIni)


Situao 2
Tab3 (Coddisciplina, AnoSem, SiglaTurma, HoraInicio, NumHoras, NomeDisc, Creditosdisc)

As dependncias funcionais que existem nesta tabela so as seguintes:
{Coddisciplina, AnoSem, SiglaTurma, HoraInicio} -> NumHoras
Coddisciplina -> NomeDisc
Coddisciplina -> CreditosDisc

a) 1FN
b)
1FN
Tab3 (Coddisciplina, AnoSem, SiglaTurma, HoraInicio, NumHoras, NomeDisc, Creditosdisc)
2FN
Tab3 (Coddisciplina, AnoSem, SiglaTurma, HoraInicio, NumHoras)
Tab4 (Coddisciplina, NomeDisc, Creditosdisc)
3FN = 2FN

Situao 3
Tab (CodPerifComp, CodModelo, NoConfig, Quantidade, NomeModelo, CodCPU, NomeCPU)

As dependncias funcionais que existem nesta tabela so as seguintes:
{CodPerifComp, CodModleo, NoConfig}->Quantidade
CodModelo -> NomeModelo
CodCPU -> NomeCPU
CodModelo -> CodCPU
CodModelo -> NomeCPU

a) 1FN
b)
1FN
Tab (CodPerifComp, CodModelo, NoConfig, Quantidade, NomeModelo, CodCPU, NomeCPU)
2FN
Tab1 (CodPerifComp, CodModelo, NoConfig, Quantidade)
Tab2 (CodModelo, NomeModelo, CodCPU, NomeCPU)
3FN
Tab1 (CodPerifComp, CodModelo, NoConfig, Quantidade)
Tab2 (CodModelo, NomeModelo, CodCPU)
Tab3 (CodCPU, NomeCPU)

Situao 4
Tab (SiglaCia, NoVoo, NomeCia, SiglaAeroSaida, NomeAeroSaida, HoraSaida, HoraChegada)

As dependncias funcionais que existem nesta tabela so as seguintes:
{SiglaCia, NoVoo} -> {SiglaAeroSaida, NomeAeroSaida, HoraSaida, HoraChegada}
SiglaCia -> NomeCia
SiglaAeroSaida -> NomeAeroSaida

a) 1FN
b)
1fn
Tab (SiglaCia, NoVoo, NomeCia, SiglaAeroSaida, NomeAeroSaida, HoraSaida, HoraChegada)
2FN
Tab1 (SiglaCia, NoVoo, SiglaAeroSaida, NomeAeroSaida, HoraSaida, HoraChegada)
Tab2 (SiglaCia, NomeCia)
3FN
Tab1 (SiglaCia, NoVoo, SiglaAeroSaida, HoraSaida, HoraChegada)
Tab2 (SiglaCia, NomeCia)
Tab3 (SiglaAeroSaida, NomeAeroSaida)









Questo 4
A empresa XPTO tem para cada funcionrio uma ficha com os seus dados pessoais, onde consta o seu
nmero, nome, data de nascimento, e o cdigo e o descritivo da funo desempenhada pelo
funcionrio, tem ainda, o nome e a data de nascimento de cada um dos seus filhos, e o nome do
conjugue. Na ficha constam tambm dados referentes ao seu trabalho na empresa, nomeadamente, o
nmero do chefe e as datas de quando comeou e de quando terminou de trabalhar com esse chefe.
Nesta empresa, um funcionrio s tem um chefe, mas pode ter tido vrios chefes durante a sua
atividade na empresa, e pode ainda ter tido o mesmo chefe em alturas diferentes. Um chefe um
funcionrio da empresa.

a) Escreva a estrutura de dados no normalizada correspondente ao processo descrito no texto.
b) Normalize a estrutura de dados obtida na alnea anterior, apresentando a 1, 2 e a 3 FN.


a)
funcionrio (numero, nome, data nascimento, cdigo funo, descrio funo, dependentes (nome,
data nascimento), nome cnjuge, trabalhos (chefe, data inicio, data fim))
b)
1FN
funcionrio (numero, nome, data nascimento, cdigo funo, descrio funo, , nome cnjuge)
dependentes (numero funcionrio, nome, data nascimento)
trabalhos (numero funcionrio, chefe, data inicio, data fim))
2FN = 1FN
3FN
funcionrio (numero, nome, data nascimento, cdigo funo, nome cnjuge)
Funcao (cdigo funo, descrio funo)
dependentes (numero funcionrio, nome, data nascimento)
trabalhos (numero funcionrio, chefe, data inicio, data fim))















Questo 5
Considere a seguinte tabela que pretende registrar os dados dos funcionrios de vrias empresas que
nos prestam servios.

Cdigo
Empresa
Nome
Empresa
Codigo
Funcionario
Nome do
Funcionario
Telefone
Empresa
Celular
funcionrio
Morada
Empresa
Nome
filhos
A Amorim A321 Ftima 6002888 (0936)7575
757
Porto Duarte
A Amorim A324 Tiago 6002888 (0936)6758
585
Porto Teresa
B Sonae B211 Ana 9060099 (0931)7896
787
Maia Joo
B Sonae B211 Ana 9060099 (0931)7896
787
Maia Pedro
B Sonae B211 Ana 9060099 (0931)7896
787
Maia Catarina
B Sonae B212 Telmo 9060099 (0933)6898
888
Maia Joana
B Sonae B212 Telmo 9060099 (0933)6898
888
Maia Rita
C Telecom C067 Diogo 4550022 (0931)7686
896
Matosinho
s
Mariana
C Telecom C067 Diogo 4550022 (0931)7686
896
Matosinho
s
Rodrigo
C Telecom C067 Isabel 4550022 (0933)3535
333
Matosinho
s


Nota: o cdigo de funcionrio nico, isto , um cdigo de funcionrio no se repete em empresas
diferentes.

a) Em que forma normal se encontra a tabela. Justifique.
b) Conceba a estrutura da base de dados sugerida para que se encontre na 3 Forma Normal.
Apresente as estruturas obtidas em todas as Formas Normais.

1FN
Funcionario (Codigo Empresa, Nome Empresa, Codigo Funcionario, Nome Funcionario, Telefone
Empresa, CelularFuncionario, MoradaEmpresa)
Filhos (CodigoFuncionario, NomeFilhos)
2FN = 1FN
3FN
Funcionario (Codigo Empresa, Codigo Funcionario, NomeFuncionario, Celular Funcionario)
Empresa (Codigo Empresa, Nome Empresa, Telefone Empresa, MoradaEmpresa)
Filhos (CodigoFuncionario, NomeFilhos)






Questo 6
Para cada situao abaixo aplique as 3 Formas Normais cabveis, passo a passo, caso se faa
necessrio.

a) Observe a ficha de inscrio abaixo. Refere-se a inscrio de processo seletivo de uma instituio de
um dos candidatos.


INSCRICAO (numero, nome, data, endereo, bairro, cidade, cep, telefone, celular, email, cdigo curso,
nome curso, cdigo turno, nome turno, responsvel)
1fn
INSCRICAO (numero, nome, data, endereo, bairro, cidade, cep, telefone, celular, email, cdigo curso,
nome curso, cdigo turno, nome turno, responsvel)
2fn=1fn
3fn
INSCRICAO (numero, nome, data, endereo, bairro, cidade, cep, telefone, celular, email, cdigo curso, ,
cdigo turno, responsvel)
CURSO (cdigo curso, nome curso)
TURNO (cdigo turno, nome turno)

b) Histrico de um dos alunos de uma faculdade


HISTORICO (nome do curso, cdigo do curso, aluno, matricula, status, (disciplina, professor, nota,
faltas, situao))
1fn
Aluno (nome do curso, cdigo do curso, aluno, matricula, status,)
HISTORICO(Matricula, disciplina, professor, nota, faltas, situao)
2fn=1fn
3fn
Aluno (cdigo do curso, aluno, matricula, status,)
Curso (cdigo do curso, nome do curso)
HISTORICO(Matricula, disciplina, professor, nota, faltas, situao)





Questo 7
Para os exerccios abaixo, indicar a FN atual e, para as estruturas que j no estiverem, derivar at a
3FN, indicando todas as tabelas resultantes.

1. (cod_produto, cod_fornecedor, nom_produto, nom_fornecedor, qtd_estoque)
E se um produto pudesse ser fornecido por mais de um fornecedor ?
( cod_produto, cod_fornecedor, nom_produto, nom_fornecedor, qtd_estoque )

2. (cod_projeto, num_funcionario, nom_projeto, dat_inicio_func_proj -> data em que o funcionrio foi
alocado ao projeto )
E se um funcionrio pudesse ser alocado apenas num projeto ?
( num_funcionario, cod_projeto, nom_projeto, dat_inicio_func_proj )

3. (num_medico, num_paciente, dat_consulta, nom_medico, dat_nascim_paciente, obs_consulta )
E se, na tabela original, tivemos uma coluna ind_pac_oper_medico ( indica se o paciente j foi operado
pelo mdico ) ?

4. ( num_loja, cod_produto, dat_venda, qtd_vendida_data, qtd_estoque_atual )
Onde: qtd_vendida_data -> vendas de um produto numa loja, numa determinada data
qtd_estoque_atual -> estoque atual do produto numa determinada loja

5. (cod_linha, num_onibus, dat_transporte, qtd_passag_data, qtd_viagens_data)
Onde: qtd_passag_data -> passageiros transportados por um nibus, numa determinada data (
suponha que um nibus no servir a duas linhas, num mesmo dia )
qtd_viagens_data -> viagens realizadas por um nibuls, numa determinada data

6. ( num_fatura, num_carto_cred, dat_compra, dat_fatura, val_compra_cartao, val_total_fatura )
Onde: val_compra_cartao -> valor total da compra de um carto, numa determinada data, lanado na
fatura

Vous aimerez peut-être aussi