Instrução ITERATE

A instrução ITERATE pára a iteração atual da instrução que contém a instrução WHILE, REPEAT, LOOP ou BEGIN, identificada pelo Label.

A instrução contida avalia sua condição de loop (se houver alguma) e começa o processamento da próxima iteração ou pára o loop, conforme a condição indicar.

SINTAXE

Exemplo

No exemplo a seguir, o loop repete quatro vezes; ou seja, a linha identificada pelo comentário Algumas instruções 1 é transmitida quatro vezes. Porém, a linha identificada pelo comentário Algumas instruções 2 é transmitida somente duas vezes, devido à ação das instruções IF e ITERATE. A instrução ITERATE não ignora o teste da condição de loop. Tome um cuidado particular para que a ação de ITERATE não ignore a lógica que faz o loop avançar e depois finalizar. A contagem de loop é incrementada no início do loop neste exemplo:
DECLARE i INTEGER;
SET i = 0;
X : REPEAT
    SET i = i + 1;

    -- Algumas instruções 1

    IF i IN(2, 3) THEN
        ITERATE X;
  END IF;

    -- Algumas instruções 2

UNTIL
  i >= 4
END REPEAT X;

As instruções ITERATE não precisam ser contidas diretamente por sua instrução rotulada, tornando as instruções ITERATE particularmente poderosas.

Conceitos relacionados
Visão Geral do ESQL
Tarefas relacionadas
Desenvolvendo ESQL
Referências relacionadas
Diagramas de Sintaxe: Tipos Disponíveis
instruções ESQL
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ak05060_