Pular para o conteúdo principal

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

Banco de DadosSQL
Código
fc044175
Banca
FCC
Órgão
DPE-AM
Ano
2018
Cargo
Analista em Gestão Especializado de Defensoria - Analista de Banco de Dados
O comando SQL–ANSI para criar um procedimento chamado P1, que selecione os atributos A e B, de uma tabela T é:
  1. APROCEDURE P1 ISSELECT A, BFROM T;
  2. BINSERT PROCEDURE P1 INTO DATABASE ASSELECT A, BFROM T
  3. CCREATE PROCEDURE P1( )SELECT A, BFROM T;
  4. DMAKE PROCEDURE P1 (SELECT A, BFROM T);
  5. EPROCEDURE P1 ASSELECT A, BFROM T
Revelar gabarito e comentário

GabaritoC — CREATE PROCEDURE P1( ) SELECT A, B FROM T;

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: Criação de Procedimentos (PROCEDURE)

Gabarito: letra C. O comando SQL-ANSI para criar um procedimento armazenado é CREATE PROCEDURE, seguido do nome e parâmetros opcionais, e o corpo da procedure (neste caso, um SELECT). A alternativa C apresenta exatamente essa sintaxe: CREATE PROCEDURE P1( ) SELECT A, B FROM T;.

O padrão SQL-ANSI para criação de procedures é:

CREATE PROCEDURE nome ( [parâmetros] ) [AS]
   corpo_SQL;

A palavra AS é opcional em muitos SGBDs, por isso a ausência dela na alternativa C não a invalida. As outras alternativas ou omitem CREATE, ou usam palavras-chave incorretas (INSERT, MAKE) ou não abrem parênteses.

Alternativa A — ❌ Incorreta

PROCEDURE P1 IS SELECT A, B FROM T; — Falta a palavra CREATE no início. O comando não é válido.

Alternativa B — ❌ Incorreta

INSERT PROCEDURE P1 INTO DATABASE AS SELECT A, B FROM TINSERT é usado para inserir dados em tabelas, não para criar procedures.

Alternativa C — ✅ Correta ⟵ GABARITO

CREATE PROCEDURE P1( ) SELECT A, B FROM T; — Atende exatamente à sintaxe padrão: CREATE PROCEDURE nome (parâmetros) corpo. O par de parênteses vazio indica que a procedure não recebe parâmetros.

Alternativa D — ❌ Incorreta

MAKE PROCEDURE P1 (SELECT A, B FROM T);MAKE não é um comando SQL válido.

Alternativa E — ❌ Incorreta

PROCEDURE P1 AS SELECT A, B FROM T — Novamente, falta CREATE no início. O banco interpretaria como uma referência a uma procedure já existente, não como criação.

PEGA ESSA DICA!

Ao revisar comandos SQL de criação de objetos (tabelas, views, procedures, funções etc.), note que eles sempre começam com o verbo CREATE, seguido do tipo do objeto e seu nome. Essa memória visual ajuda a eliminar rapidamente alternativas que omitem CREATE.

Gabarito: letra C.

Link permanente: /questoes/fc044175