已解决
PL/SQL循环
来自网友在路上 157857提问 提问时间:2023-09-27 13:30:27阅读次数: 57
最佳答案 问答题库578位专家为你答疑解惑
目录
1. FOR 循环
-- FOR 循环的注意事项:
-- LOOP 循环
-- WHILE 循环
-- 总结:
TIPS:
跳出循环指令
1. FOR 循环
FOR 循环变量 IN 循环下限..循环上线 LOOP-- 循环变量可以用任意的字母或者单词去替代循环执行的逻辑题END LOOP;
计算 1-100的累加值
DECLARE
V_TEXT VARCHAR2(1000):='';
BEGINFOR X IN 1..10 LOOPV_TEXT:=V_TEXT || 'O_0 ';DBMS_OUTPUT.put_line(V_TEXT);END LOOP;
END;
-- FOR 循环的注意事项:
1. 循环变量只能在循环体内引用.
2. 循环变量只能在 IN 上下限之间每次循环赋值,不能使用其他字句重新赋值
3. 循环体中间不能缺少字句,如果为了验证循环,可以加入一个 NULL;
BEGIN
FOR X IN 1..20 LOOPNULL;END LOOP;
END;
-- LOOP 循环
DECLARE
V_SUM NUMBER:=0;
BEGIN
LOOP V_SUM:=V_SUM+1;dbms_output.put_line(V_SUM);EXIT WHEN V_SUM=5;-- 如果这里不设定跳出循环条件,会陷入死循环dbms_output.put_line(V_SUM);END LOOP;
END;
-- WHILE 循环
DECLARE
V_SUM NUMBER:=0;
BEGIN
WHILE V_SUM < 20 LOOPDBMS_OUTPUT.PUT_LINE(V_SUM);V_SUM:=V_SUM+1;
END LOOP;
END;
-- 总结:
三种循环:
-- FOR 循环,循环变量在下限和上限之间,迭代,循环达到上限的最后一次即可终止.
-- LOOP 循环, 循环无止境,直至符合循环跳出的条件,如果没有设定好条件,会陷入死循环
-- while 循环,要先设定符合的条件,才会进入循环,如果没有设定好条件,容易陷入死循环.
TIPS:
* 如果语句在循环中至少执行一次,一般使用 LOOP;
* 如果在每次开始重复时,都必须测试条件,一般使用 while
* 如果重复次数已知, 一般使用 FOR 循环.
跳出循环指令
CONTINUE:使用CONTINUE语句可以跳过当前循环迭代并继续执行下一次循环
DECLARE i NUMBER := 1;
BEGIN FOR i IN 1..5 LOOP IF i = 3 THEN CONTINUE; END IF; DBMS_OUTPUT.PUT_LINE('i = ' || i); END LOOP;
END;
EXIT:使用EXIT语句可以立即终止循环
DECLARE i NUMBER := 1;
BEGIN FOR i IN 1..5 LOOP IF i = 3 THEN CONTINUE; END IF; DBMS_OUTPUT.PUT_LINE('i = ' || i); END LOOP;
END;
查看全文
99%的人还看了
相似问题
- MeterSphere | 接口测试请求体中,int类型的入参实现动态化变量
- 【Vue】Node.js的安装与环境变量的配置
- C#中抽象类、抽象方法和接口暨内联临时变量的精彩表达
- ODBC配置数据源及相关问题(“找不到工程和库”“实时错误91对象变量或with块变量未设置”等)
- OpenLayers实战,WebGL图层根据Feature要素的变量动态渲染多种颜色的三角形,适用于大量三角形渲染不同颜色
- 全网最全jmeter接口测试/接口自动化测试看这篇文章就够了:跨线程组传递jmeter变量及cookie的处理
- Go——二、变量和数据类型
- 华为云cce中环境变量的使用
- Kotlin学习——hello kotlin 函数function 变量 类 + 泛型 + 继承
- ⑩⑤【DB】详解MySQL存储过程:变量、游标、存储函数、循环,判断语句、参数传递..
猜你感兴趣
版权申明
本文"PL/SQL循环":http://eshow365.cn/6-14695-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 1.算法——数据结构学习
- 下一篇: Hbuilder本地调试微信H5项目(一)