Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FGV 2022

Banco de DadosSQL
Código
fg047176
Banca
FGV
Órgão
CGU
Ano
2022
Nível
Superior
Cargo
Auditor Federal de Finanças e Controle - Tecnologia da Informação
No âmbito do PostgreSQL 12, considere o comando a seguir.CREATE SEQUENCE TESTEAo objeto TESTE, assim criado, aplicam-se as seguintes funções nativas:
  1. Abefore, after;
  2. Bcommit, abort;
  3. Ccurrval, nextval;
  4. Dlow, high;
  5. Enext, last.
Revelar gabarito e comentário

GabaritoC — currval, nextval;

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

Sequências no PostgreSQL – funções nativas

Gabarito: letra C. No PostgreSQL, ao criar uma sequência com CREATE SEQUENCE, as funções nativas que operam sobre o objeto são currval (retorna o valor atual da sequência) e nextval (avança e retorna o próximo valor). Nenhuma das demais alternativas corresponde a funções válidas para sequências nesse SGBD.

A banca testa o conhecimento básico sobre o comando CREATE SEQUENCE e as funções associadas. No PostgreSQL, sequências são objetos que geram valores numéricos sequenciais, comumente usados para chaves primárias auto-incrementais. As funções principais são:

  • nextval(regclass) – incrementa e retorna o novo valor.

  • currval(regclass) – retorna o valor atual (sem incrementar).

  • setval(regclass, bigint, boolean) – define um novo valor (não listada nas alternativas).

  • lastval() – retorna o valor da última sequência usada na sessão (não listada).

Alternativa A — ❌ Incorreta

before e after são palavras-chave usadas em triggers (disparo antes/depois de um evento), não em funções de sequência.

Alternativa B — ❌ Incorreta

commit e abort são comandos de transação (confirmar ou cancelar operações), não funções de sequência.

Alternativa C — ✅ Correta ⟵ GABARITO

currval e nextval são exatamente as funções nativas para obter o valor corrente e o próximo valor de uma sequência no PostgreSQL.

Alternativa D — ❌ Incorreta

low e high não são funções padrão do PostgreSQL nesse contexto (embora existam funções como low e high em outras linguagens ou para faixas de dados, não se aplicam a sequências).

Alternativa E — ❌ Incorreta

next e last lembram outras funções (por exemplo, next em cursores, last em arrays), mas não são funções específicas para sequências no PostgreSQL.

PEGA ESSA DICA!

Em provas sobre PostgreSQL, lembre-se que nextval e currval andam juntas. A banca frequentemente usa pares de palavras que parecem relacionadas (ex.: before/after, commit/abort) para confundir. Grave: para sequências, o par é nextval (próximo) e currval (atual).

Gabarito: letra C.

Link permanente: /questoes/fg047176