当前位置: 首页 > news >正文

青岛君哲网站建设公司87网站一起做

青岛君哲网站建设公司,87网站一起做,推广公司名称,wordpress如何修改登录地址在Oracle数据库中#xff0c;FOR LOOP是一种常用的循环控制结构#xff0c;它允许你重复执行一系列语句固定次数或直到满足特定条件为止。然而#xff0c;标准的Oracle PL/SQL中的FOR LOOP主要用于遍历集合#xff08;如数组或游标的结果集#xff09;#xff0c;而不是像…在Oracle数据库中FOR LOOP是一种常用的循环控制结构它允许你重复执行一系列语句固定次数或直到满足特定条件为止。然而标准的Oracle PL/SQL中的FOR LOOP主要用于遍历集合如数组或游标的结果集而不是像在一些其他编程语言中那样用于基于条件的循环。 参考官方文档地址 https://docs.oracle.com/en/database/oracle/oracle-database/23/lnpls/plsql-control-statements.html#GUID-0E130F2D-9635-4C0B-9D63-16C3D9FBE7D2 Oracle PL/SQL中的FOR LOOP主要用于以下几种情况 基于数值范围的遍历你可以使用FOR LOOP遍历一个从起始值到结束值的数值序列。 遍历游标FOR LOOP可以自动从游标中检索行并允许你在循环体内部访问这些行。 1基于数值范围的遍历 DECLARE i NUMBER; BEGINFOR i IN 1..5 LOOPDBMS_OUTPUT.PUT_LINE(i的值为: || i);END LOOP; END; /sqlplus执行结果如下 SYSorcl set serveroutput on SYSorcl DECLARE i NUMBER;2 BEGIN3 FOR i IN 1..5 LOOP4 DBMS_OUTPUT.PUT_LINE(i的值为: || i);5 END LOOP;6 END;7 / i的值为: 1 i的值为: 2 i的值为: 3 i的值为: 4 i的值为: 5PL/SQL procedure successfully completed.这个例子中FOR LOOP会遍历从1到5的整数并在控制台上打印每个数值。 2反向循环语句范围迭代控制 The FOR LOOP statement in this example prints the numbers from 5 to 1. The loop variable i is implicitly declared as a PLS_INTEGER (the default for counting and indexing loops). BEGINFOR i IN REVERSE 1..5 LOOPDBMS_OUTPUT.PUT_LINE (i的值为: ||i);END LOOP; END; / Result: i的值为: 5 i的值为: 4 i的值为: 3 i的值为: 2 i的值为: 13实现带步长的循环 3.1Oracle23ai新特性FOR i IN … BY … LOOP This example shows a loop variable n declared explicitly as a NUMBER(5,1). The increment for the counter is 0.5. 这个例子中展示一个显式声明为NUMBER5,1的循环变量n。计数器的步长增量为0.5。 BEGINFOR n NUMBER(5,1) IN 1.0 .. 5.0 BY 0.5 LOOPDBMS_OUTPUT.PUT_LINE(n的值为: ||n);END LOOP; END; /Result: SYSFREE BEGIN2 FOR n NUMBER(5,1) IN 1.0 .. 5.0 BY 0.5 LOOP3 DBMS_OUTPUT.PUT_LINE(n的值为: ||n);4 END LOOP;5 END;6 / n的值为: 1 n的值为: 1.5 n的值为: 2 n的值为: 2.5 n的值为: 3 n的值为: 3.5 n的值为: 4 n的值为: 4.5 n的值为: 5PL/SQL procedure successfully completed.Oracle19c及之前的版本以上语句执行不了报错如下 SYSorcl BEGIN2 FOR n NUMBER(5,1) IN 1.0 .. 3.0 BY 0.5 LOOP3 DBMS_OUTPUT.PUT_LINE(n);4 END LOOP;5 END;6 /FOR n NUMBER(5,1) IN 1.0 .. 3.0 BY 0.5 LOOP* ERROR at line 2: ORA-06550: line 2, column 10: PLS-00103: Encountered the symbol NUMBER when expecting one of the following: in The symbol in was substituted for NUMBER to continue. ORA-06550: line 2, column 22: PLS-00103: Encountered the symbol IN when expecting one of the following: . ( * % - / at loop mod remainder rem .. an exponent (**) || multiset 3.2Oracle19c及之前的版本可以采用如下两种方法即可 3.2.1使用LOOP … EXIT WHEN … END LOOP SYSFREE DECLARE i NUMBER(5,1) : 1.0; 2 BEGIN 3 LOOP 4 DBMS_OUTPUT.PUT_LINE(i的值为: || i); 5 i : i 0.5; -- 设置步长为0.5 6 EXIT WHEN i 5.0; -- 当i大于5.0时退出循环 7 END LOOP; 8 END; 9 / i的值为: 1 i的值为: 1.5 i的值为: 2 i的值为: 2.5 i的值为: 3 i的值为: 3.5 i的值为: 4 i的值为: 4.5 i的值为: 5PL/SQL procedure successfully completed.3.2.2使用WHILE LOOP SYSorcl DECLARE i NUMBER(5,1) : 1.0; 2 BEGIN 3 WHILE i 5.0 LOOP 4 DBMS_OUTPUT.PUT_LINE(i的值为: || i); 5 i : i 0.5; -- 设置步长为0.5 6 END LOOP; 7 END; 8 / i的值为: 1 i的值为: 1.5 i的值为: 2 i的值为: 2.5 i的值为: 3 i的值为: 3.5 i的值为: 4 i的值为: 4.5 i的值为: 5PL/SQL procedure successfully completed.3.3STEP Clause in FOR LOOP Statement In this example, the FOR LOOP effectively increments the index by five 这个例子中展示循环变量n。计数器的步长增量为5。 BEGINFOR i IN 5..15 BY 5 LOOPDBMS_OUTPUT.PUT_LINE (i);END LOOP; END; 执行并返回结果 SYSFREE BEGIN2 FOR i IN 5..15 BY 5 LOOP3 DBMS_OUTPUT.PUT_LINE (i);4 END LOOP;5 END;6 / 5 10 15PL/SQL procedure successfully completed.3.3使用LOOP … EXIT WHEN … END LOOP实现带步长的循环 下面是一个使用LOOP … EXIT WHEN … END LOOP结构来实现从1遍历到10步长为2的示例 DECLARE i NUMBER : 1; BEGIN LOOP DBMS_OUTPUT.PUT_LINE(i的值为: || i); i : i 2; -- 设置步长为2 EXIT WHEN i 10; -- 当i大于10时退出循环 END LOOP; END; /i的值为: 1 i的值为: 3 i的值为: 5 i的值为: 7 i的值为: 93.4使用WHILE LOOP实现带步长的循环 同样你也可以使用WHILE LOOP来实现相同的功能 DECLARE i NUMBER : 1; BEGIN WHILE i 10 LOOP DBMS_OUTPUT.PUT_LINE(i的值为: || i); i : i 2; -- 设置步长为2 END LOOP; END; /i的值为: 1 i的值为: 3 i的值为: 5 i的值为: 7 i的值为: 94遍历游标 假设你有一个名为employees的表包含员工的ID和姓名等信息你可以使用FOR LOOP遍历这个表的游标。 DECLARECURSOR emp_cur ISSELECT employee_id, first_name, last_name FROM employees;emp_rec emp_cur%ROWTYPE; BEGINFOR emp_rec IN emp_cur LOOPDBMS_OUTPUT.PUT_LINE(Employee ID: || emp_rec.employee_id || , Name: || emp_rec.first_name || || emp_rec.last_name);END LOOP; END; /Employee ID: 100, Name: Steven King Employee ID: 101, Name: Neena Kochhar Employee ID: 102, Name: Lex De Haan Employee ID: 103, Name: Alexander Hunold Employee ID: 104, Name: Bruce Ernst Employee ID: 105, Name: David Austin Employee ID: 106, Name: Valli Pataballa 。。。 PL/SQL procedure successfully completed.在这个例子中FOR LOOP自动从游标emp_cur中检索每一行并将每一行的数据存储在emp_rec中然后你可以在循环体内访问这些数据。 5注意 在使用DBMS_OUTPUT.PUT_LINE之前你可能需要在SQL*Plus或SQLcl中设置SERVEROUTPUT ON来确保输出被显示。Oracle PL/SQL的FOR LOOP不直接支持像其他编程语言中那样的条件退出如break语句但它通过其结构本身限制了循环的范围因此通常不需要这种功能。对于更复杂的循环条件你可能需要使用WHILE LOOP或LOOP...EXIT WHEN...END LOOP结构。
http://www.hkea.cn/news/14400872/

相关文章:

  • 郑州做网站那做租赁哪个网站好
  • 企信网是什么网站wordpress more-link
  • 中国建设银行云南官网站纪念币怎样做网站规划
  • 邯郸的网站建设东莞网站建设公司企业
  • 与网站开发相关的书籍微信推广怎么弄
  • 游戏网站创建网页制作需要哪些软件
  • 宿州专业网站建设公司怎么用html做图片展示网站
  • 什么网站可以自己做名片关键词推广排名软件
  • 做书app下载网站怎么做简易网页
  • 网站设计主页58同城最新招聘信息
  • 淘宝客优惠券网站建设wordpress个人外链
  • 网站优化的学习做宣传 为什么要做网站那
  • 访问自己做的网站网站建设 经典书籍
  • 长春网站优化团队在线制作图片旋转动态
  • 常熟专业网站建设网站模板下载简单的那种
  • 网站快速推广排名技巧安装wordpress时出现空白
  • 西充县建设路小学网站嘉兴秀洲区全网seo优化优惠
  • 网站版权 技术支持重庆九龙坡区网站建设
  • 枣阳网站建设公司销售管理系统业务处理流程
  • 如何给网站增加外链wordpress数据库thinkphp
  • 营销式网站制作做二手物资哪个网站好
  • 网站底部浮动代码网站建设在淘宝上以后让还让发布吗
  • 搭建一个自己的网站网站cdn加速怎么入侵
  • 网站技术培训学校搜索引擎优化包括( )方面的优化
  • 自己如何免费制作一个网站2018wordpress主题
  • 清远专业网站制作公司wordpress 网站打开速度慢
  • 佛山做网站开发东莞如何编写网站建设
  • 山西笑傲网站建设推广拓者吧室内设计吧
  • 网站建设的需求新手学网络运营要多久
  • 吴川网站建设余姚网站建设维护最新招聘信息