Pular para o conteúdo principal

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

Banco de DadosSQL
Código
fc023533
Banca
FCC
Órgão
TRE-AP
Ano
2015
Nível
Médio
Cargo
Técnico Judiciário - Programação de Sistemas
Um Técnico do TREAP − Tribunal Regional Eleitoral do Amapá ficou responsável por criar uma tabela no Banco de Dados denominada Tab_PAA que seja capaz de armazenar o código da auditoria (um identificador único, não nulo), o nome do auditor responsável e o órgão sendo auditado. Para isso, ele utilizou, corretamente, o seguinte comando SQL:
  1. ACREATE TABLE Tab_PAA (Cod_Audit integer PRIMARY KEY, Nome_Auditor varchar(50), Orgao_Audit varchar(50) );
  2. BCREATE_TABLE (Cod_Audit integer, Nome_Auditor varchar(50), Orgao_Audit varchar(50) ) Tab_PAA;
  3. CCREATE_TABLE Tab_PAA (Cod_Audit integer UNIQUE; Nome_Auditor varchar(50); Orgao_Audit varchar(50) );
  4. DCREATE TABLE Tab_PAA (varchar(50) Nome_Auditor, varchar(50), Orgao_Audit PRIMARY KEY integer Cod_Audit );
  5. ECREATE TABLE (UNIQUE NOT NULL Cod_Audit, VARCHAR(50) Nome_Auditor, VARCHAR(50) Orgao_Audit) Tab_PAA;
Revelar gabarito e comentário

GabaritoA — CREATE TABLE Tab_PAA (Cod_Audit integer PRIMARY KEY, Nome_Auditor varchar(50), Orgao_Audit varchar(50) );

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”.

SQL: Comando CREATE TABLE

Gabarito: letra A. A sintaxe correta do comando CREATE TABLE no SQL exige a sequência: CREATE TABLE nome_tabela (nome_coluna tipo_dado restrições, ...); A alternativa A atende a todos os requisitos do enunciado: define Cod_Audit como integer e PRIMARY KEY (garantindo unicidade e não nulidade), além das colunas Nome_Auditor e Orgao_Audit como varchar(50).

A questão cobra o conhecimento da sintaxe básica de criação de tabelas em SQL, bastante comum em concursos. Vamos analisar cada alternativa.

Alternativa A — ✅ Correta ⟵ GABARITO

A sintaxe está perfeitamente dentro do padrão SQL. A cláusula PRIMARY KEY aplicada diretamente à coluna Cod_Audit define a chave primária, que por sua vez já implica NOT NULL e unicidade. As demais colunas estão corretamente definidas com nome, tipo e entre parênteses separadas por vírgulas.

Alternativa B — ❌ Incorreta

O comando está com erro de sintaxe: CREATE_TABLE não é uma instrução válida (o correto é CREATE TABLE, com espaço). Além disso, a ordem dos parênteses está errada: a lista de colunas deve vir entre parênteses após o nome da tabela, não antes.

Alternativa C — ❌ Incorreta

Aqui o erro está no uso de ponto e vírgula (;) para separar as definições de coluna. No SQL, as colunas devem ser separadas por vírgula (,), não por ponto e vírgula. Além disso, a restrição UNIQUE não substitui PRIMARY KEY para identificar unicamente a tabela, embora o enunciado exija chave primária.

Alternativa D — ❌ Incorreta

A ordem dos elementos está trocada: primeiro deve vir o nome da coluna, depois o tipo de dado. Aqui aparece varchar(50) Nome_Auditor como se o tipo viesse antes do nome. Da mesma forma, a declaração da chave primária está fragmentada e fora do lugar correto.

Alternativa E — ❌ Incorreta

Os parênteses que deveriam envolver a lista de colunas estão colocados antes do nome da tabela, e a tabela aparece no final. A sintaxe correta é CREATE TABLE Tab_PAA ( ... ); e não CREATE TABLE ( ... ) Tab_PAA;. Além disso, a restrição UNIQUE NOT NULL está no início sem associação direta com o nome da coluna.

PEGA ESSA DICA!

Ao criar uma tabela, lembre-se sempre da ordem: CREATE TABLE nome ( coluna1 tipo [restrições], coluna2 tipo ... );. As restrições como PRIMARY KEY, NOT NULL e UNIQUE podem ser colocadas inline na coluna ou no final como constraints separadas, mas a ordem coluna-tipo é obrigatória.

Gabarito: letra A — única que segue corretamente a sintaxe padrão do SQL para criação de tabelas.

Link permanente: /questoes/fc023533