Pular para o conteúdo principal

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

Banco de DadosSQL
Código
fc036399
Banca
FCC
Órgão
DPE-RS
Ano
2017
Nível
Superior
Cargo
Analista - Banco de Dados
O comando SQL para criar uma tabela denominada Natural, contendo os campos ID, Nome, Cidade e País, sendo todos do tipo caractere e ID a chave primária é:
  1. ACREATE TABLE Natural(ID, Nome, Cidade, País, (CHAR(15), CHAR(30), CHAR(20), CHAR(20));
  2. BCREATE TABLE Natural(ID PK, Nome CHAR(30), Cidade CHAR(20), País CHAR(20));
  3. CCREATE TABLE Natural(ID PK, Nome, Cidade, País, (CHAR(15, 30, 20, 20));
  4. DCREATE TABLE Natural(ID Char(15) PRIMARY KEY, Nome CHAR(30), Cidade CHAR(20), País (CHAR(20));
  5. ECREATE TABLE Natural(ID PRIMARY KEY CHAR(15), Nome AND Cidade AND País CHAR(30, 20, 20));
Revelar gabarito e comentário

GabaritoD — CREATE TABLE Natural (ID Char(15) PRIMARY KEY, Nome CHAR(30), Cidade CHAR(20), País (CHAR(20));

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 D. A sintaxe correta para criar a tabela Natural com os campos especificados e chave primária definida diretamente na coluna ID é: CREATE TABLE Natural (ID Char(15) PRIMARY KEY, Nome CHAR(30), Cidade CHAR(20), País CHAR(20));, que corresponde exatamente à alternativa D.

A banca cobra o conhecimento da sintaxe básica do comando CREATE TABLE da linguagem SQL. Cada coluna deve ser declarada com seu nome seguido do tipo de dado; a restrição PRIMARY KEY pode ser colocada imediatamente após o tipo da coluna ou, alternativamente, como uma restrição separada ao final da lista de colunas.

Alternativa A — ❌ Incorreta

Os tipos de dados foram declarados em uma lista separada após os nomes das colunas, o que não é válido. A sintaxe exige que o tipo seja informado imediatamente após cada coluna. Exemplo incorreto: (ID, Nome, ..., (CHAR(15), CHAR(30), ...)).

Alternativa B — ❌ Incorreta

A definição ID PK não é aceita. Não existe a restrição PK como tipo; a chave primária deve ser especificada com a cláusula PRIMARY KEY. Além disso, os tipos de dados estão corretos para as demais colunas, mas a ausência da declaração PRIMARY KEY invalida o comando.

Alternativa C — ❌ Incorreta

Além do uso incorreto de ID PK, os tipos das colunas Nome, Cidade e País não foram declarados, e a sintaxe CHAR(15, 30, 20, 20) é inválida. O tipo CHAR aceita apenas um parâmetro: o comprimento da string.

Alternativa D — ✅ Correta ⟵ GABARITO

Sintaxe correta: cada coluna é definida com nome e tipo, e a chave primária é aplicada diretamente à coluna ID por meio da restrição PRIMARY KEY. Observação: a coluna País está com parênteses extra (CHAR(20)), mas a maioria dos SGBDs ignora esses parênteses ou exige que o tipo seja escrito sem eles; no entanto, a alternativa é a única que segue a estrutura básica correta e é considerada válida pela banca.

Alternativa E — ❌ Incorreta

Uso indevido do operador AND para ligar nomes de colunas e tipos. A sintaxe correta separa cada coluna por vírgula. Além disso, CHAR(30, 20, 20) é inválido: o tipo CHAR aceita apenas um argumento (comprimento).

Conclusão: O único comando que respeita a sintaxe padrão do SQL CREATE TABLE, definindo todas as colunas com seus respectivos tipos e a coluna ID como chave primária, é o apresentado na letra D.

Link permanente: /questoes/fc036399