FC ConcursosFC Concursos

Questão FC372827

Em um banco de dados aberto e em condições ideais há uma tabela chamada Contribuinte cuja chave primária é idContribuinte. Há também uma tabela chamada Imposto cuja chave primária

Linguagem SQL

FCC · 2019

Em um banco de dados aberto e em condições ideais há uma tabela chamada Contribuinte cuja chave primária é idContribuinte. Há também uma tabela chamada Imposto cuja chave primária é idImposto. Para criar uma tabela de associação chamada Contribuinte_Imposto cuja chave primária é composta pelos campos idContribuinte e idImposto, que são chaves estrangeiras resultantes da relação dessa tabela com as tabelas Contribuinte e Imposto, utiliza-se a instrução SQL

  1. CREATE TABLE Contribuinte_Imposto(idContribuinte INT, idImposto INT, PRIMARY KEY (idContribuinte), FOREIGN KEY (idContribuinte) REFERENCES Contribuinte (idContribuinte), PRIMARY KEY (idImposto), FOREIGN KEY (idContribuinte) REFERENCES Contribuinte (idContribuinte));
  2. CREATE TABLE Contribuinte_Imposto(idContribuinte INT NOT NULL, idImposto INT NOT NULL, PRIMARY KEY (idContribuinte, idImposto), CONSTRAINT fk1 FOREIGN KEY (idContribuinte) REFERENCES Contribuinte (idContribuinte), CONSTRAINT fk2 FOREIGN KEY (idImposto) REFERENCES Imposto (idImposto));
  3. CREATE TABLE Contribuinte_Imposto(idContribuinte INT NOT NULL, idImposto INT NOT NULL, PRIMARY KEY (idContribuinte, idImposto), FOREIGN KEY (idContribuinte) SOURCE Contribuinte (idContribuinte), FOREIGN KEY (idImposto) SOURCE Imposto (idImposto));
  4. CREATE TABLE Contribuinte_Imposto(idContribuinte INT NOT NULL, idImposto INT NOT NULL, PRIMARY KEY (idContribuinte, idImposto), FOREIGN KEY (idContribuinte, idImposto) REFERENCES (Contribuinte!idContribuinte, Imposto!idImposto));
  5. CREATE TABLE Contribuinte_Imposto(idContribuinte INT NOT NULL, idImposto INT NOT NULL, PRIMARY KEY (idContribuinte, idImposto), FOREIGN KEY (idContribuinte, idImposto) REFERENCES all parents);
Mostrar resposta e comentário

Gabarito

B

Comentário do professor

A instrução CREATE TABLE Contribuinte_Imposto define os campos idContribuinte e idImposto como NOT NULL, garantindo que não haja valores nulos em nenhuma das colunas que participam da chave.

Ao declarar PRIMARY KEY (idContribuinte, idImposto) está-se criando uma chave primária composta, ou seja, a unicidade é garantida pela combinação dos dois campos, evitando duplicidade de pares (modelo típico de relacionamento many-to-many entre contribuintes e impostos).

As cláusulas CONSTRAINT fk1 FOREIGN KEY (idContribuinte) REFERENCES Contribuinte (idContribuinte) e CONSTRAINT fk2 FOREIGN KEY (idImposto) REFERENCES Imposto (idImposto) estabelecem as chaves estrangeiras, vinculando cada coluna ao respectivo pai e assegurando a integridade referencial.

O uso explícito de nomes de restrição (fk1, fk2) é recomendável para facilitar manutenção e mensagens de erro. Sintaxe e semântica estão corretas para o objetivo proposto.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo