PL/SQL é uma linguagem estruturada em blocos, elemento fundamental para se escrever um código. Em PL/SQL, um bloco é delimitado pelas palavras reservadas:
- A)BEGIN END;
Correta, porque um bloco PL/SQL é iniciado por BEGIN e encerrado por END;.
- B)START STOP;
Errada, pois START e STOP não são palavras reservadas que delimitam blocos em PL/SQL.
- C)OPEN CLOSE;
Errada, porque OPEN e CLOSE são usados com cursores e recursos, não para delimitar blocos.
- D)LOOP END LOOP;
Errada, já que LOOP e END LOOP delimitam laços, não o bloco PL/SQL como um todo.
- E)DECLARE EXCEPTION.
Errada, pois DECLARE inicia a seção de declarações e EXCEPTION é uma seção de tratamento, não a delimitação do bloco.
Gabarito: A
PL/SQL é uma linguagem de blocos: você organiza o código em partes bem definidas para facilitar leitura, manutenção e reutilização. O bloco básico tem uma área de declaração, uma parte executável e, se necessário, uma parte de tratamento de exceções. Essa estrutura é o coração do PL/SQL, então a banca adora cobrar a forma correta de abertura e fechamento. No bloco anônimo mais comum, a estrutura começa com a palavra reservada BEGIN e termina com END;, que são justamente os marcos que delimitam a área executável. Se houver declarações de variáveis, elas vêm antes do BEGIN, na seção DECLARE, mas o bloco em si continua sendo fechado por END;. Sem esse par, o código fica sem fronteira clara, como sanduíche sem pão. Por isso, o gabarito A está correto: em PL/SQL, um bloco é delimitado por BEGIN e END;. Essa é a forma clássica descrita na documentação da Oracle e na doutrina de PL/SQL. A banca costuma testar esse detalhe literal, então vale guardar essa dupla como quem guarda senha de banco. As outras alternativas misturam comandos que existem em outros contextos, mas não servem para delimitar blocos em PL/SQL. Em concurso, o truque é justamente esse: trocar a moldura verdadeira por palavras que parecem técnicas, mas não fecham a estrutura da linguagem.