Loops PL/SQL

Loops Pl Sql



Os loops são um dos blocos de construção primários na programação. Usamos loops para criar os blocos de código gerenciáveis ​​que podem ser executados várias vezes quando uma determinada condição é verdadeira. Eles são o osso fundamental ao automatizar as tarefas repetitivas sem reescrever um bloco de código várias vezes.

Como todas as principais linguagens de programação, PL/SQL oferece suporte a loops que permitem que um conjunto de instruções seja repetido até que uma determinada condição seja atendida.

Neste tutorial, exploraremos o uso da instrução LOOP em PL/SQL para executar repetidamente um bloco de código.







Oráculo Loops

A linguagem PL/SQL oferece suporte a várias construções de loop, como loop “for” e loops “while”. Podemos expressar a sintaxe de um loop genérico no Oracle conforme mostrado a seguir:



<< rótulo >> CICLO
loop_statement;
END LOOP loop_label;

Isso contém a palavra-chave LOOP e o corpo do loop a ser executado e é colocado entre a palavra-chave END LOOP.



O bloco LOOP executa as ações definidas e retorna o controle para a cláusula de loop superior após a conclusão. Isso geralmente é incluído em uma cláusula EXIT ou EXIT WHEN para encerrar o loop após uma condição específica ser atendida. Isso ajuda a evitar os loops infinitos.





Oracle For Loop Sintaxe:

O seguinte mostra a sintaxe de um loop “for” em PL/SQL:

COMEÇAR
FOR loop_variable IN [lower_bound..upper_bound] LOOP
-- código a ser executado no loop
END LOOP;
FIM;

A variável_loop permite definir um loop que é usado para controlar o loop e os limites inferior e superior. Os limites superior e inferior especificam os valores do intervalo em que ocorre a avaliação do loop.



Oracle While Loops

Também podemos definir os loops “while” em PL/SQL conforme demonstrado pela seguinte sintaxe:

COMEÇAR
CONDIÇÃO WHILE LOOP
-- ação de loop
END LOOP;
FIM;

Em um loop “while”, a ação do loop é executada repetidamente enquanto a condição for verdadeira.

Oracle Cursor For Loops

O Oracle também oferece suporte aos loops “cursor for” que nos permitem executar um conjunto de instruções para cada linha em um determinado conjunto de resultados. A sintaxe pode ser expressa da seguinte forma:

COMEÇAR
FOR loop_variable IN (SELECT column1, column2, ...
DE tabela1, tabela2, ...
ONDE condição) LOOP
-- ação de loop
END LOOP;
FIM;

Exemplos de loops no Oracle

Os exemplos a seguir abrangem os fundamentos do trabalho com for, while e loops de cursor no Oracle.

Exemplo de Loop Oracle For:

Este exemplo demonstra como usar um loop “for” para imprimir os números de 1 a 10.

COMEÇAR
FOR i IN 1..10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
END LOOP;
FIM;

Exemplo de loop while:

Podemos executar uma ação semelhante usando um loop while, conforme mostrado a seguir:

COMEÇAR
DECLARAR
i NÚMERO:= 1;
COMEÇAR
ENQUANTO i <= 10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
i := i + 1;
END LOOP;
FIM;
FIM;

Isso deve executar uma ação semelhante ao loop “for”.

Cursor For Loop Exemplo:

Veja a seguir como usar o loop “cursor for” para obter o nome completo de um cliente:

COMEÇAR
PARA funcionário IN (SELECT first_name, last_name
DE funcionários) LOOP
DBMS_OUTPUT.PUT_LINE(funcionário.primeiro_nome || ' ' || funcionário.último_nome);
FINALIZAR CIRCUITO;
FIM;

Saída de Exemplo:

Conclusão

Nesta postagem, você encontrou três tipos principais de loops na linguagem Oracle PL/SQL. Você pode verificar a documentação para explorar mais.