SóProvas


ID
118849
Banca
FCC
Órgão
TRT - 20ª REGIÃO (SE)
Ano
2010
Provas
Disciplina
Banco de Dados
Assuntos

Considere o esquema relacional da tabela abaixo:

Venda(CodVenda, Cliente, Endereco, Cep, Cidade, Estado, Telefone, Produto, Quantidade, ValorUnitario, ValorTotal)

A quantidade de tabelas, após a aplicação da primeira, segunda e terceira formas normais, será

Alternativas
Comentários
  • teremos 4 tabelas inicialmente:Venda (codvenda, valorunitario, valortotal)produto (codproduto, quantidade)cliente (codcliente, endereco, cep, cidade, estado)telefone (numtelene, codcliente).Porem, se formos normalizar um pouco mais podemos colocar tabelas para cidades, estados e endereços.Ai teremos mais tabelas...
  • André, eu até marquei como resposta a definição de 4 tabelas, mas nem tinha imaginado o telefone como uma tabela separada e sim o endereço(multivalorado), nesse caso você concorda comigo que o mais correto sería a divisão em 5 tabelas?
  • Pensei em 4 tabelas:
    1)Venda:codVenda, codCliente, valorTotal.
    2)ItemVenda:codVenda,codProduto, quantidade.
    3)Cliente:codCliente,endereco, cep, cidade, estado, telefone.
    4)Produto:codProduto, valorUnitario.

    *Acho que poderiam existir também outras 4 entidades: Estado, Cidade, Telefone e Endereco(residencial e entrega).

  • Não concordo com a resposta... questão fácil de anulação. Porém na prova para não correr risco marcaria a 5.

     

  • Venda(CodVenda, CodCliente)

    Produto(CodProduto, Produto, ValorUnitario)

    Item(CodVenda, CodProduto, Quantidade, ValorTotal)

    Venda(CodCliente, Cliente, Endereco, Cep, Cidade, Estado, Telefone)

    Esta questao possivelmente foi extraida do capitulo 12 do livro "Banco de dados Teoria e Desenvolvimento" de Willian Pereira Alves, Editora Etica

  • Questao totalmente bizarra, pra inicio de conversa seriam necessario no minimo umas 5 ou 6 tabelas pra normalizar isso.
     
    1º Ponto
    Nos comentarios colocaram Cidade e Estados na mesma tabela, o que está contra a 3ºFN,  cidade depende de Estado e como Estado não é chave não é possivel isso.
     
    2º Ponto
    Nem vou considerar o campo endereço como multivalorado, senao ja seria outra tabela.
     
    Uma normalizaçao pra atender mais ou menos o enunciado seria.
     
    Venda [codVenda, codCliente] 
     
    ItemVenda [codVenda,codProduto,quantidade,valorTotal]
     
    Cliente [codCliente,endereco, cep, cidade, telefone]
     
    Estado [CodEstado, NomeEstado]
     
    Cidade [CodCidade, CodEstado]
     
    Produto [codProduto, valorUnitario]
  • Gabarito: D

    Questão muito complicada... eles não definem bem as regras do negócio. Uma solução possível seria:

    Venda (*CodVenda*, Cliente, ValorTotal)
    Venda_Produto (*CodVenda*, *Produto*, ValorUnitario, Quantidade)
    Cliente (*CodCliente*, Cep)
    CEP (*Cep*, Cidade, Estado)

    Com esta solução, estaríamos na 3FN se considerarmos que o ValorUnitario de um produto não depende do mesmo e sim da venda (ou seja, das chaves CodVenda+Produto). Isso porque o valor do produto pode mudar de uma venda para a outra.
    Nas outras soluções propostas acima, há uma clara dependência entre CEP e Cidade e Estado na tabela Cliente, o que viola a 3FN. Nessa solução que agora apresento, a única bizarrice é o fato de não termos uma coluna Produto. Mas pelo menos, a 3FN está sendo respeitada. Uma outra possível solução com 5 colunas permitiria termos uma tabela Produto, mas como o gabarito diz que só temos 4.

    Como disse, é complicado ter que adivinhar o que a FCC quer como resposta...
  • VENDA();
    PRODUTO();
    CLIENTE();
    CEP();
  • Errei a questão, mas imagino que sejam necessárias, ao menos, 5 relações:
    • Cliente
    • Telefone (Entidade fraca ligada ao cliente)
    • Venda
    • Item Produto
    • Produto

  • Para está na 1FN é necessário decompor o campo "endereço" em vários atributos e portanto uma outra tabela, caso contrário incorrerá em campo multivalorado.
    Acho que 5 tabelas ou mais seria necessário.

    Questão de fácil anulação. Vejam o exemplo da "tabela telefone".

    []´s
  • Realmente muito subjetiva... mas uma tabela é certa: item_venda!   Ou seja, no mínimo 4.

    Agora com relação a telefone e 3FN... poderia haver mais tabelas!!