SóProvas


ID
1725379
Banca
FCC
Órgão
MPE-PB
Ano
2015
Provas
Disciplina
Banco de Dados
Assuntos

Atenção: Considere as informações abaixo para responder à questão.

CREATE TABLE Loja (

      idLoja INTEGER NOT NULL,

      nomeLoja VARCHAR(45),

      PRIMARY KEY(idLoja)

);

CREATE TABLE Filial (

      idFilial INTEGER NOT NULL,

      idLoja INTEGER NOT NULL,

      cidadeFilial VARCHAR(45),

      vendasFilial DOUBLE,

       PRIMARY KEY(idFilial, idLoja),

            FOREIGN KEY(idLoja)

            REFERENCES Loja(idLoja)

); 

Considere que na tabela Loja foram cadastrados os seguintes registros: 

                                 idLoja   nomeLoja

                                    1              A

                                    2              B

                                    3              C 

Na tabela Filial, foram cadastrados os seguintes registros: 

                   idFilial      idLoja     cidadeFilial    vendasFilial

                       1              1          Campinas        120000

                       1               2         Campinas          35000

                       1               3          São Paulo       120000

                       2               1          Salvador          240000

                       2               2          Salvador            20000

                       3               1       Rio de Janeiro      60000

                       4               1          Curitiba              40000 

Ao tentar executar a instrução INSERT INTO filial (idFilial, idLoja, cidadeFilial, vendasFilial) VALUES (2, 1, 'São Paulo', 340000); será informado pelo SGBD que

Alternativas
Comentários
  • A) nome da cidade deve estar com aspas simples.

    B) Id da loja está sim cadastrado. Vide registro da tabela Loja (1, A).

    C) Sintaxe correta.

    D) Há violação de chave primária (vide letra E).

    E) A chave primária da tabela filial é composta pelo idFilial e idLoja. Estes dois atributos não podem ser repetidos. Observem que o comando INSERT tenta inserir uma nova tupla com valores 2 e 1 para idFilial e idLoja, respectivamente. Esta combinação de valores já existe na tabela filial (2  - 1 - Salvador - 240000), violando assim a chave primária.


    Bons estudos!

  • Neste caso ocorreu uma violação de integridade de Entidade e por isso a tupla não será inserida.