Questão de Banco de Dados — PL/SQL e Outras Extensões SQL — VUNESP 2024
Banco de Dados›PL/SQL e Outras Extensões SQL
Código
vu212093
Banca
VUNESP
Órgão
Pref Aparecida (SP)
Ano
2024
Cargo
Ana ( )
O comando PL/SQL do sistema gerenciador de banco de dados Oracle 21c para declarar uma constante Abc do tipo inteiro com o valor 200 é:
ADECLARE ALL CONST Abc = 200 AS INT;
BDECLARE Abc CONSTANT INTEGER := 200;
CDECLARE CONST AS INT Abc := 200;
DDECLARE AS INTEGER Abc → 200;
EDECLARE Abc CONST INT AS 200;
Revelar gabarito e comentário▾
GabaritoB — DECLARE Abc CONSTANT INTEGER := 200;
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 constantes no Oracle
Gabarito: letra B. Em PL/SQL, a sintaxe correta para declarar uma constante é nome CONSTANT tipo := valor;, dentro da seção DECLARE do bloco. A alternativa B (DECLARE Abc CONSTANT INTEGER := 200;) é a única que segue exatamente essa estrutura, com a palavra-chave CONSTANT, o tipo INTEGER e a atribuição com :=.
A linguagem PL/SQL (Procedural Language/Structured Query Language) é uma extensão procedural do SQL, desenvolvida pela Oracle. Ela permite criar blocos de código com lógica de programação, como variáveis, constantes, estruturas de controle (IF, CASE, LOOP) e tratamento de exceções. A unidade básica de um programa PL/SQL é o bloco, que possui a seguinte estrutura:
DECLARE
<seção de declarações>
BEGIN
<comandos executáveis>
EXCEPTION
<tratamento de exceções>
END;
A seção DECLARE é onde se declaram variáveis, constantes, tipos e subprogramas locais. É nela que a constante Abc deve ser declarada. A sintaxe para declarar uma constante em PL/SQL é:
nome CONSTANT tipo_dado := valor_inicial;
A palavra-chave CONSTANT é obrigatória para indicar que o valor não pode ser alterado após a declaração. O tipo de dado pode ser INTEGER, NUMBER, VARCHAR2, DATE, entre outros. A atribuição do valor inicial é feita com o operador := (dois pontos seguido de igual), que é o operador de atribuição em PL/SQL, diferente do = usado em outras linguagens.
Por exemplo, para declarar uma constante chamada PI com o valor 3.14159, a sintaxe seria:
DECLARE
PI CONSTANT NUMBER := 3.14159;
BEGIN
...
END;
A banca explora a confusão com a sintaxe de outras linguagens, como C ou Java, onde a declaração de constantes pode usar const ou final, e a atribuição pode ser feita com =. Em PL/SQL, a palavra-chave é CONSTANT (por extenso) e o operador de atribuição é :=. Além disso, a ordem dos elementos é fixa: primeiro o nome, depois CONSTANT, depois o tipo, e por fim o valor com :=.
Guarde essa estrutura: nome CONSTANT tipo := valor;. É exatamente nela que as alternativas se dividem: as incorretas ou invertem a ordem, ou usam palavras-chave erradas, ou usam o operador de atribuição incorreto.
1nome
2CONSTANT
3tipo
4:=
5valor
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
A alternativa DECLARE ALL CONST Abc = 200 AS INT; está errada por vários motivos. Primeiro, a palavra-chave ALL não existe na declaração de constantes em PL/SQL. Segundo, a ordem está invertida: o correto é nome CONSTANT tipo := valor, não CONST nome = valor AS tipo. Terceiro, o operador de atribuição = não é o correto em PL/SQL, que usa :=. Por fim, a palavra CONST é uma abreviação que não é utilizada; o correto é CONSTANT por extenso.
Alternativa B — ✅ Correta ⟵ GABARITO
A alternativa DECLARE Abc CONSTANT INTEGER := 200; está correta. Ela segue exatamente a sintaxe de declaração de constantes em PL/SQL: o nome da constante (Abc), a palavra-chave CONSTANT, o tipo de dado (INTEGER) e a atribuição do valor inicial com o operador := (:= 200). A seção DECLARE é o local apropriado para essa declaração dentro de um bloco PL/SQL.
Alternativa C — ❌ Incorreta
A alternativa DECLARE CONST AS INT Abc := 200; está errada. A ordem dos elementos está completamente invertida. O correto é nome CONSTANT tipo := valor, mas aqui temos CONST AS INT Abc := 200, onde CONST aparece antes do nome, AS INT é uma construção que não existe em PL/SQL (o tipo é declarado diretamente, sem a palavra AS), e o nome Abc aparece depois do tipo. A palavra CONST também é uma abreviação incorreta; o correto é CONSTANT.
Alternativa D — ❌ Incorreta
A alternativa DECLARE AS INTEGER Abc → 200; está errada. O operador → (seta) não é o operador de atribuição em PL/SQL; o correto é :=. Além disso, a ordem está invertida: o correto é nome CONSTANT tipo := valor, não AS INTEGER Abc → 200. A palavra AS não é usada na declaração de constantes em PL/SQL.
Alternativa E — ❌ Incorreta
A alternativa DECLARE Abc CONST INT AS 200; está errada. A palavra CONST é uma abreviação incorreta; o correto é CONSTANT por extenso. Além disso, a construção AS 200 não é válida em PL/SQL; o valor inicial deve ser atribuído com o operador :=, não com a palavra AS. A ordem também está errada: o tipo de dado (INT) deveria vir antes do valor, e não depois.
NÃO CAIA NESSA!
A banca explora a confusão com a sintaxe de outras linguagens de programação. Em C, por exemplo, declararíamos const int Abc = 200;, e em Java, final int Abc = 200;. O candidato que conhece essas linguagens pode se confundir e marcar uma alternativa que usa const, = ou AS. Em PL/SQL, a palavra-chave é CONSTANT (por extenso), o operador de atribuição é :=, e a ordem é nome CONSTANT tipo := valor. Memorize essa estrutura e você não errará mais.
PEGA ESSA DICA!
Para questões de sintaxe PL/SQL, foque nos elementos essenciais: a palavra CONSTANT, o operador := e a ordem nome CONSTANT tipo := valor. Elimine alternativas que usem const, =, AS, → ou que invertam a ordem. Com esse filtro, a resposta correta fica evidente.