Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FCC 2015

Banco de DadosSQL
Código
fc024539
Banca
FCC
Órgão
TRT - 15ª Região (SP)
Ano
2015
Nível
Médio
Cargo
Técnico Judiciário - Tecnologia da Informação
Deseja-se criar uma tabela chamada Departamento contendo os seguintes campos:idDep − inteiro, chave primária, não nulo, auto numeração.nomeDep − cadeia de caracteres com, no máximo, 50 caracteres, não nulo.telefoneDep − cadeia de caracteres com, no máximo, 15 caracteres.Considerando-se que o banco de dados está aberto e em condições ideais, o comando SQL que deverá ser utilizado é:
  1. ACREATE TABLE Departamento (idDep INT NOT NULL AUTO_NUMBERING,nomeDep VARCHAR(50) NOT NULL,telefoneDep VARCHAR(15),PRIMARY KEY (idDep));
  2. BCREATE TABLE Departamento (idDep INT NOT NULL AUTOINCREMENT,nomeDep VARCHAR2(50) NOT NULL,telefoneDep VARCHAR2(15) NULLABLE,PRIMARY KEY (idDep));
  3. CCREATE TABLE Departamento (idDep INT NOT NULL AUTO_INCREMENT,nomeDep VARCHAR(50) NOT NULL,telefoneDep VARCHAR(15),PRIMARY KEY (idDep));
  4. DCREATE TABLE Departamento (idDep INT NOT NULL AUTOINCREMENT,nomeDep VARCHAR(50) NOT NULL,telefoneDep VARCHAR(15)PRIMARY_KEY (idDep));
  5. ECREATE TABLE Departamento (idDep INT NOT NULL AUTO_INCREMENT PRIMARY_KEY,nomeDep VARCHAR(50) NOT NULL,telefoneDep VARCHAR(15));
Revelar gabarito e comentário

GabaritoC — CREATE TABLE Departamento ( idDep INT NOT NULL AUTO_INCREMENT, nomeDep VARCHAR(50) NOT NULL, telefoneDep VARCHAR(15), PRIMARY KEY (idDep));

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Comandos DDL: CREATE TABLE

Gabarito: letra C. A sintaxe correta para criar a tabela Departamento com chave primária e auto numeração é utilizando AUTO_INCREMENT (padrão MySQL) e definindo a PRIMARY KEY como restrição de tabela, como na alternativa C. As demais alternativas contêm erros como palavras-chave inexistentes (AUTO_NUMBERING, PRIMARY_KEY), uso de tipos não padrão (VARCHAR2) ou sintaxe incorreta de restrições.

A banca testa o conhecimento da sintaxe SQL para criação de tabelas, especialmente a cláusula de auto numeração. Embora não haja um padrão SQL universal para auto incremento, o termo AUTO_INCREMENT é amplamente adotado (MySQL) e comumente cobrado em concursos. A estrutura correta segue:

  • Nome da coluna, tipo, restrições (NOT NULL, etc.)

  • Opcionalmente, a restrição PRIMARY KEY pode ser definida no final, como na alternativa C.

Critério

Alternativa A

Alternativa B

Alternativa C (Gabarito)

Alternativa D

Alternativa E

Auto numeração

AUTO_NUMBERING ❌ (inválido)

AUTOINCREMENT ❌ (inválido)

AUTO_INCREMENT ✅ (válido)

AUTOINCREMENT ❌ (inválido)

AUTO_INCREMENT ✅ (válido)

Tipo de dado

VARCHAR

VARCHAR2 ❌ (Oracle, não padrão)

VARCHAR

VARCHAR

VARCHAR

Restrição NOT NULL

NOT NULL

NOT NULL

NOT NULL

NOT NULL

NOT NULL

Sintaxe PRIMARY KEY

PRIMARY KEY (idDep) ✅ (restrição de tabela)

PRIMARY KEY (idDep) ✅ (restrição de tabela)

PRIMARY KEY (idDep) ✅ (restrição de tabela)

PRIMARY_KEY (idDep) ❌ (underscore inválido)

PRIMARY_KEY ❌ (inline com underscore inválido)

NULLABLE explícito

Ausente (padrão OK) ✅

NULLABLE ❌ (desnecessário)

Ausente (padrão OK) ✅

Ausente (padrão OK) ✅

Ausente (padrão OK) ✅

Alternativa A — ❌ Incorreta

Utiliza AUTO_NUMBERING, que não é uma palavra-chave SQL válida. O termo correto para auto numeração no contexto MySQL é AUTO_INCREMENT.

Alternativa B — ❌ Incorreta

Emprega AUTOINCREMENT (também inválido) e VARCHAR2 (específico do Oracle, mas a questão não indica SGBD). A restrição NULLABLE é desnecessária (padrão é permitir nulos quando não há NOT NULL).

Alternativa C — ✅ Correta ⟵ GABARITO

Usa AUTO_INCREMENT, VARCHAR e define a PRIMARY KEY corretamente como restrição de tabela, após a lista de colunas. Atende a todos os requisitos do enunciado.

Alternativa D — ❌ Incorreta

Escreve PRIMARY_KEY com underscore, o que é inválido (o correto é PRIMARY KEY). Além disso, usa AUTOINCREMENT.

Alternativa E — ❌ Incorreta

Apesar de usar AUTO_INCREMENT, a restrição PRIMARY_KEY (com underscore) está incorreta e, além disso, a chave primária inline não segue o formato adequado (deveria ser PRIMARY KEY sem underscore e separada por espaço).

NÃO CAIA NESSA!

A banca troca os termos de auto numeração (AUTOINCREMENT, AUTO_NUMBERING) e a grafia de PRIMARY KEY (com underscore) para confundir. Decore a sintaxe exata: AUTO_INCREMENT e PRIMARY KEY (sem underscore).

Gabarito: letra C

Link permanente: /questoes/fc024539