Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Używanie CONTINUE In Loops do wznowienia kontroli w Oracle

Instrukcja CONTINUE w pętlach bezwarunkowo opuszcza bieżącą iterację pętli i przekazuje sterowanie do następnej iteracji bieżącej pętli lub otaczającej pętli oznaczonej etykietą. W poniższym przykładzie instrukcja CONTINUE wewnątrz podstawowej instrukcji LOOP przenosi sterowanie bezwarunkowo do następnej iteracji bieżącej pętli.

DECLARE
x NUMBER :=0;
BEGIN
LOOP -- Po instrukcji CONTINUE sterowanie wznawia się tutaj
DBMS_OUTPUT.PUT_LINE ('Inside loop:x =' || TO_CHAR (x ));
x :=x + 1;

IF x <3 -- zamiast tego jeśli end if warunek dla kontynuacji możesz użyć również CONTINUE Kiedy x <3;
THEN
KONTYNUUJ;
END IF;

DBMS_OUTPUT.PUT_LINE (
'Wewnątrz pętli, po CONTINUE:x =' || TO_CHAR (x));
EXIT WHEN x =5;
END LOOP;

DBMS_OUTPUT.PUT_LINE (' Po pętli:x =' || TO_CHAR (x));
END;
/
Wyjście powyższego bloku powinno wyglądać tak:

Pętla wewnętrzna:x =0
Pętla wewnętrzna:x =1
Pętla wewnętrzna:x =2
Pętla wewnętrzna, po CONTINUE:x =3
Pętla wewnętrzna:x =3
Wewnętrzna pętla, po CONTINUE:x =4
Wewnętrzna pętla:x =4
Wewnętrzna pętla, po CONTINUE:x =5
Po pętli:x =5

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle:OALL8 jest w niespójnym stanie

  2. Czy zakleszczenie może wystąpić przy tej samej metodzie dostępu?

  3. Oracle PL/SQL — zgłaszanie wyjątków zdefiniowanych przez użytkownika za pomocą niestandardowego SQLERRM

  4. ORA-28001:Hasło wygasło

  5. Określanie lokalizacji odpowiedniego pliku tnsnames.ora