Sentencia WHILE

La sentencia WHILE evalúa una expresión de condición y, si es TRUE, ejecuta la secuencia de sentencias.

Sintaxis

La sentencia WHILE repite los pasos especificados en DO mientras condición sea TRUE. Es responsabilidad del usuario asegurarse de que la lógica del programa es de tal manera que el bucle se interrumpe. Si condición se evalúa como UNKNOWN, el bucle se interrumpe inmediatamente.

Si está presente, Etiqueta suministra un nombre a la sentencia. No tiene ningún efecto en el comportamiento de la propia sentencia WHILE, pero permite que las sentencias incluyan ITERATE y LEAVE u otras sentencias etiquetadas, que a su vez las incluyen. La segunda Etiqueta sólo puede estar presente si la primera Etiqueta está presente y, en este caso, las etiquetas deben ser idénticas. No es un error que dos o más sentencias etiquetadas en el mismo nivel tengan la misma Etiqueta, pero esto niega parcialmente la ventaja de la segunda Etiqueta. La ventaja es que coinciden, de manera precisa y no ambigua, cada END con su WHILE. Sin embargo, es un error que una sentencia etiquetada dentro de otras sentencias tenga la misma etiqueta, porque esto hace que el comportamiento de las sentencias ITERATE y LEAVE sea ambiguo.

Ejemplo

Por ejemplo:
DECLARE i INTEGER;
SET i = 1;
X : WHILE i <= 3 DO
  ...
  SET i = i + 1;
  END WHILE X;

Conceptos relacionados
ESQL

Tareas relacionadas
Desarrollo de ESQL
Creación de referencias de campo dinámico

Referencia relacionada
Preferencia de sintaxis
Sentencias ESQL