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;

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
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2005 Última Atualização: 04/11/2005
ak05060_