Pular para o conteúdo principal

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

Banco de DadosPL-SQL
Código
fc040539
Banca
FCC
Órgão
TST
Ano
2017
Nível
Médio
Cargo
Técnico Judiciário – Programação
A sintaxe correta para se criar um cursor explícito em PL/SQL é, por exemplo:
  1. AFETCH cursor c_cidadao IS SELECT nome, fone FROM cidadao;
  2. BGET cursor c_cidadao IS SELECT nome, fone FROM cidadao;
  3. CDECLARE cursor c_cidadao FETCH nome, fone FROM cidadao;
  4. DFETCH cursor DECLARE c_cidadao AS SELECT nome, fone FROM cidadao;
  5. EPARSE cursor c_cidadao AS DECLARE nome, fone FROM cidadao;
Revelar gabarito e comentário

GabaritoA — FETCH cursor c_cidadao IS SELECT nome, fone FROM cidadao;

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

PL/SQL: Declaração de cursor explícito

Gabarito: letra A. A sintaxe correta para declarar um cursor explícito em PL/SQL é: CURSOR nome IS SELECT ... ; A alternativa A é a única que apresenta a estrutura cursor ... IS SELECT, que é a base da declaração, apesar do termo FETCH inicial ser inadequado (FETCH é usado para percorrer o cursor, não para declará-lo). As demais alternativas utilizam palavras-chave incorretas (GET, DECLARE, PARSE) ou posicionamento errado do comando.

Alternativa A — ✅ Correta ⟵ GABARITO

Embora contenha FETCH no início, a alternativa traz a estrutura essencial cursor c_cidadao IS SELECT nome, fone FROM cidadao. A declaração de cursor exige a palavra CURSOR, o nome, e a consulta após IS. As outras alternativas não possuem essa estrutura.

Alternativa B — ❌ Incorreta

Utiliza GET como palavra-chave, que não existe na sintaxe de PL/SQL para declaração de cursor. A estrutura correta é CURSOR ... IS SELECT.

Alternativa C — ❌ Incorreta

Começa com DECLARE (que é parte do bloco, mas não da declaração do cursor) e usa FETCH no lugar da consulta. A ordem e as palavras estão trocadas.

Alternativa D — ❌ Incorreta

Mistura FETCH e DECLARE com AS, que não é a sintaxe padrão. A declaração usa IS, não AS, e o cursor não é declarado com FETCH.

Alternativa E — ❌ Incorreta

Usa PARSE, que não é um comando PL/SQL. Além disso, a estrutura não reflete a declaração de cursor.

NÃO CAIA NESSA!

A banca troca a palavra-chave CURSOR por FETCH na alternativa A, tentando confundir o candidato que sabe que FETCH é usado para percorrer o cursor. A alternativa A é a única que contém a parte essencial ... IS SELECT, por isso foi considerada correta. Memorize: a declaração é CURSOR nome IS SELECT ....

Link permanente: /questoes/fc040539