Um bloco PL/SQL tem três partes: uma parte declarativa, uma...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - da parte executável.
Para compreender a resposta correta, é importante saber que um bloco PL/SQL é composto por três partes distintas:
- Parte Declarativa: onde são declaradas as variáveis, tipos de dados e cursores. Essa parte é opcional, pois nem sempre precisamos declarar variáveis ou constantes.
- Parte Executável: é o coração do bloco PL/SQL, onde de fato ocorrem as operações, como atribuições, loops, condicionais e chamadas a subprogramas. Esta parte é essencial, pois sem ela o bloco não realizaria nenhuma ação e, portanto, seria inútil.
- Parte de Tratamento de Exceção: onde são definidas as ações a serem tomadas em resposta a exceções (erros) que podem ocorrer na parte executável. Embora seja muito importante para a robustez e confiabilidade do código, essa parte é opcional.
A questão busca identificar qual ou quais partes são indispensáveis para que um bloco PL/SQL seja considerado válido. A resposta correta é a Parte Executável porque, sem ela, o bloco PL/SQL não teria nenhum comando para executar, e por isso não faria sentido. É possível criar um bloco PL/SQL com apenas a parte executável, mesmo que nenhum dado seja declarado ou nenhuma exceção seja tratada explicitamente.
Assim, mesmo que a prática recomendada seja utilizar todas as partes conforme a necessidade para um código bem estruturado, seguro e de fácil manutenção, tecnicamente, apenas a parte executável é estritamente necessária para que um bloco PL/SQL seja válido e possa ser executado.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
Estrutura Básica do PL/SQL
A unidade básica em PL/SQL é um bloco. Todos os programas em PL/SQL são compostos por blocos, que podem estar localizados uns dentro dos outros. Geralmente, cada bloco efectua uma acção lógica no programa. Um bloco tem basicamente a seguinte estrutura:
- DECLARE
Secção para declaração de variáveis,tipos e subprogramas locais.
- SELECTION
Secção para escolher linhas em uma tabela.
- BEGIN
Secção Executável, nesta secção ficam as instruções procedimentais e SQL. Esta é a única secção do bloco que é indispensável e obrigatória.
- EXCEPTION
Secção/Sector onde ficam as instruções de tratamento de erro.
- END
Fonte: wikipedia
BEGIN DBMS_OUTPUT.PUT('teste'); END;
Exemplo bloco completo:
DECLARE l_message VARCHAR2 (100) := 'Hello'; BEGIN DECLARE l_message2 VARCHAR2 (100) := l_message || ' World!'; BEGIN DBMS_OUTPUT.put_line (l_message2); END; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line (DBMS_UTILITY.format_error_stack); END;
http://www.oracle.com/technetwork/issue-archive/2011/11-mar/o21plsql-242570.html
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo