PL / SQL - Vòng lặp
Trong chương này, chúng ta sẽ thảo luận về Vòng lặp trong PL / SQL. Có thể có một tình huống khi bạn cần thực thi một khối mã nhiều lần. Nói chung, các câu lệnh được thực thi tuần tự: Câu lệnh đầu tiên trong một hàm được thực hiện trước tiên, tiếp theo là câu lệnh thứ hai, v.v.
Các ngôn ngữ lập trình cung cấp các cấu trúc điều khiển khác nhau cho phép các đường dẫn thực thi phức tạp hơn.
Câu lệnh lặp cho phép chúng ta thực hiện một câu lệnh hoặc nhóm câu lệnh nhiều lần và sau đây là dạng chung của câu lệnh lặp trong hầu hết các ngôn ngữ lập trình:
PL / SQL cung cấp các loại vòng lặp sau để xử lý các yêu cầu lặp. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.
S.Không | Loại vòng lặp & Mô tả |
---|---|
1 | PL / SQL cơ bản LOOP
Trong cấu trúc vòng lặp này, chuỗi các câu lệnh được bao giữa các câu lệnh LOOP và END LOOP. Tại mỗi lần lặp, chuỗi các câu lệnh được thực hiện và sau đó điều khiển tiếp tục ở đầu vòng lặp. |
2 | PL / SQL KHI ĐĂNG NHẬP
Lặp lại một câu lệnh hoặc một nhóm câu lệnh trong khi một điều kiện đã cho là đúng. Nó kiểm tra điều kiện trước khi thực thi phần thân của vòng lặp. |
3 | PL / SQL ĐỂ LOOP
Thực thi một chuỗi các câu lệnh nhiều lần và viết tắt mã quản lý biến vòng lặp. |
4 | Các vòng lặp lồng nhau trong PL / SQL
Bạn có thể sử dụng một hoặc nhiều vòng lặp bên trong bất kỳ vòng lặp cơ bản nào khác, vòng lặp while hoặc for. |
Gắn nhãn một vòng lặp PL / SQL
Các vòng lặp PL / SQL có thể được gắn nhãn. Nhãn phải được bao bởi dấu ngoặc kép (<< và >>) và xuất hiện ở đầu câu lệnh LOOP. Tên nhãn cũng có thể xuất hiện ở cuối câu lệnh LOOP. Bạn có thể sử dụng nhãn trong câu lệnh EXIT để thoát khỏi vòng lặp.
Chương trình sau đây minh họa khái niệm -
DECLARE
i number(1);
j number(1);
BEGIN
<< outer_loop >>
FOR i IN 1..3 LOOP
<< inner_loop >>
FOR j IN 1..3 LOOP
dbms_output.put_line('i is: '|| i || ' and j is: ' || j);
END loop inner_loop;
END loop outer_loop;
END;
/
Khi đoạn mã trên được thực thi tại dấu nhắc SQL, nó tạo ra kết quả sau:
i is: 1 and j is: 1
i is: 1 and j is: 2
i is: 1 and j is: 3
i is: 2 and j is: 1
i is: 2 and j is: 2
i is: 2 and j is: 3
i is: 3 and j is: 1
i is: 3 and j is: 2
i is: 3 and j is: 3
PL/SQL procedure successfully completed.
Các tuyên bố kiểm soát vòng lặp
Các câu lệnh điều khiển vòng lặp thay đổi việc thực thi từ trình tự bình thường của nó. Khi việc thực thi rời khỏi một phạm vi, tất cả các đối tượng tự động được tạo trong phạm vi đó sẽ bị phá hủy.
PL / SQL hỗ trợ các câu lệnh điều khiển sau. Việc gắn nhãn các vòng lặp cũng giúp thực hiện việc kiểm soát bên ngoài một vòng lặp. Nhấp vào các liên kết sau để kiểm tra chi tiết của chúng.
S.Không | Tuyên bố & Mô tả Kiểm soát |
---|---|
1 | Tuyên bố EXIT
Câu lệnh Exit hoàn thành vòng lặp và điều khiển được chuyển tới câu lệnh ngay sau khi KẾT THÚC LOOP. |
2 | Tuyên bố CONTINUE
Làm cho vòng lặp bỏ qua phần còn lại của cơ thể và ngay lập tức kiểm tra lại tình trạng của nó trước khi nhắc lại. |
3 | Tuyên bố GOTO
Chuyển quyền điều khiển sang câu lệnh được gắn nhãn. Mặc dù không nên sử dụng câu lệnh GOTO trong chương trình của bạn. |