FGV · DPE/RO · 2015 · Analista Programador

Questão 32 · Informática: Banco de dados

Com referência ao MySQL 5.0, o comando que será corretamente executado é:

  1. A) CREATE TABLE teste ( artigo INT(4) UNSIGNED ZEROFILL NOT NULL, vendedor CHAR(20) NOT NULL, preco DOUBLE(16,2) NOT NULL, PRIMARY KEY(artigo, vendedor)); INSERT INTO teste VALUES (1,'A',3.45),(1,'B',3.99),(1,'A',10.99), (3,'B',1.45),(3,'C',1.69),(3,'D',1.25);
  2. B) CREATE TABLE teste ( artigo INT(4) UNSIGNED ZEROFILL NOT NULL, vendedor CHAR(20) NOT NULL, preco DOUBLE(16,2) NOT NULL, PRIMARY KEY(artigo, vendedor)); INSERT INTO teste VALUES (1,'A',3.45),(1,'B',3.99),(2,'A',10.99), (3,'B',1.45),(3,'C',1.69),(3,'D',1.25);
  3. C) CREATE TABLE teste ( artigo INT(4) UNSIGNED ZEROFILL NOT NULL, vendedor CHAR(20) NOT NULL, preco DOUBLE(16,2) NOT NULL, PRIMARY KEY(artigo, vendedor)); INSERT (1,'A',3.45),(1,'B',3.99),(2,'A',10.99), (3,'B',1.45),(3,'C',1.69),(3,'D',1.25);
  4. D) CREATE TABLE teste ( artigo INT(4) UNSIGNED ZEROFILL NOT NULL, vendedor CHAR(20) NOT NULL, preco DOUBLE(16,2) NOT NULL, PRIMARY KEY(artigo, vendedor)); INSERT VALUES (1,'A',3.45),(1,'B',3.99),(1,'A',10.99), (3,'B',1.45),(3,'C',1.69),(3,'D',1.25);
  5. E) CREATE TABLE teste ( artigo INT(4) UNSIGNED ZEROFILL NOT NULL, vendedor CHAR(20) NOT NULL, preco DOUBLE(16,2) NOT NULL, PRIMARY KEY(artigo, vendedor), VALUES (1,'A',3.45),(1,'B',3.99),(2,'A',10.99), (3,'B',1.45),(3,'C',1.69),(3,'D',1.25));

Marque a alternativa correta:

Gabarito: B

Gabarito definitivo divulgado pela banca FGV (DPE/RO 2015).

Comentário

Gabarito: B.

Para o comando ser executado sem erro, o CREATE TABLE e o INSERT precisam ter sintaxe correta e não violar a chave primária. A tabela teste é criada com artigo INT(4) UNSIGNED ZEROFILL, vendedor CHAR(20), preco DOUBLE(16,2) e PRIMARY KEY(artigo, vendedor), que é uma chave composta. O INSERT INTO teste VALUES traz seis linhas com pares (artigo, vendedor) distintos: (1, A), (1, B), (2, A), (3, B), (3, C) e (3, D). Como não há repetição da chave, a execução é bem-sucedida. Logo, a alternativa correta é a B.

As demais estão erradas:

  • (A) repete o par (1, A) na chave primária, o que viola a unicidade e gera erro.
  • (C) o INSERT não traz o nome da tabela nem a palavra VALUES: erro de sintaxe.
  • (D) o INSERT não traz o nome da tabela: erro de sintaxe.
  • (E) coloca VALUES dentro da definição da tabela, no CREATE TABLE: erro de sintaxe.

Dica: em questões de SQL com alternativas parecidas, confira primeiro a sintaxe e depois as restrições, como a chave primária. Comparando A e B, a diferença está na terceira linha: (1, A) repetida em A e (2, A) em B.

Fundamentos: Sintaxe de CREATE TABLE e INSERT no MySQL · Chave primária composta e violação de unicidade · Tipos numéricos e de texto no MySQL 5.0

Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.

Fonte: prova FGV DPE/RO 2015 (Analista Programador), questão 32, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.

Concursos abertos que cobram Informática

TCE/MA 2026 Analista, Auditor e TécnicoUNCISAL 2026 Professor do Magistério SuperiorPROCON/AL 2026 Analista e Fiscal de Defesa do Consumidor