Enquanto entra em loop Oracle PL/SQL com exemplo

O que é loop while PL/SQL?

Enquanto Loop em PL/SQL funciona de forma semelhante à instrução de loop básica, exceto que a condição EXIT está bem no início do loop. Funciona como um loop de verificação de entrada onde o bloco de execução só será executado se a condição for satisfeita, pois a condição de saída é verificada antes da execução.

Ele não exige explicitamente que a palavra-chave 'EXIT' saia do loop, pois valida a condição implicitamente a cada vez.

Sintaxe do Loop While PL/SQL

WHILE <EXIT condition>
 LOOP
<execution block starts>
.
.
.
<execution_block_ends>
 END LOOP;
  • Na sintaxe acima, a palavra-chave 'WHILE' marca o início do loop e 'END LOOP' marca o fim do loop.
  • A condição EXIT é avaliada sempre antes que a parte de execução comece a ser executada.
  • O bloco de execução contém todo o código que precisa ser executado.
  • A parte de execução pode conter qualquer instrução de execução.

Exemplo de Oracle Loop While PL/SQL

Neste exemplo, imprimiremos números de 1 a 5 usando a instrução de loop WHILE. Para isso, executaremos o seguinte código:

Loop While PL/SQL
Exemplo de loop while PL/SQL
DECLARE
a NUMBER :=1;
BEGIN
dbms_output.put_line('Program started');
WHILE (a <= 5) 
LOOP
dbms_output.put_line(a);
a:=a+1;
END LOOP;
dbms_output.put_line(‘Program completed' ); 	
END:
/

Explicação do código:

  • Linha de código 2: Declarar a variável 'a' como tipo de dados 'NUMBER' e inicializá-la com o valor '1'.
  • Linha de código 4: Imprimindo a declaração “Programa iniciado”.
  • Linha de código 5: A palavra-chave 'WHILE' marca o início do loop e também verifica se o valor de 'a' é menor ou igual a 5
  • Linha de código 7: Imprime o valor de 'a'.
  • Linha de código 8: Aumenta o valor de 'a' em +1.
  • Linha de código 9: A palavra-chave 'END LOOP' marca o fim do bloco de execução.
  • O código da linha 7 e da linha 8 continuará a ser executado até que 'a' atinja o valor 6, pois a condição retornará TRUE e o controle sairá do laço.
  • Linha de código 10: Imprimindo a declaração “Programa concluído”

Resumo

laço ENQUANTO Loop
Critério de saída Sair quando a condição de verificação retornar falso
Uso É bom usar quando a contagem do loop é desconhecida e a saída é baseada em alguma outra condição.