Oracle中for循环如何使用

Oracle中for循环如何使用

Oracle for in loop 循环的一些实例,以作学习和加强使用熟练度及场景应用.

一些技巧

for 语句后面的 loop end loop 可以类比成 c#/java 等编程语言 for 语句后面的语句块符号(花括号{}), 以便理解和使用.

一些实例

循环输出数值

-- 循环输出数值begin  for i in 1 .. 100 loop    sys.dbms_output.put_line(i);  end loop;end;

循环累加

-- 循环累加declare  var_sum number := 0;begin  for i in 1 .. 100 loop    var_sum := var_sum + i;  end loop;  sys.dbms_output.put_line(var_sum); -- 5050end;

批量插入

-- 批量插入begin  for i in 1 .. 100 loop    -- todo: insert into some_table(field1, field2, ..., fieldN) values(valie1, value2, ..., valueN);    sys.dbms_output.put_line('insert: ' || to_char(i));  end loop;  commit;  sys.dbms_output.put_line('多次insert,统一commit');end;

批量更新

-- 批量更新begin  for i in 1 .. 100 loop    -- todo: update some_table set fieldN = valueN where fieldN = valueN;    sys.dbms_output.put_line('update: ' || to_char(i));  end loop;  commit;  sys.dbms_output.put_line('多次update,统一commit');end;

循环输出用户表信息

-- 查询你能管理的所有用户信息select user_id, username, created from all_users;-- 循环输出用户表信息begin  for cur_row in (select user_id, username, created from all_users) loop    sys.dbms_output.put_line(cur_row.username);  end loop;end;-- 当循环对象是比较长串的SQL时,建议提取游标,方便后续查看和维护

循环输出用户表信息(游标提取)

-- 循环输出用户表信息(游标提取)declare  -- 提取游标对象,方便单独维护SQL  cursor cursor_all_users is    select user_id, username, created from all_users;  -- 游标子项(更多的时候,表是动态表,所以这句声明也可以省略)  -- cursor_user all_users%rowtype;begin  for cursor_user in cursor_all_users loop    dbms_output.put_line(cursor_user.username);  end loop;end;

“Oracle中for循环如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

文章标题:Oracle中for循环如何使用,发布者:亿速云,转载请注明出处:https://worktile.com/kb/p/21344

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云的头像亿速云认证作者
上一篇 2022年8月29日 下午11:57
下一篇 2022年8月29日 下午11:59

相关推荐

  • mysql查询视图命令是哪个

    mysql查询视图命令是“DESCRIBE”或者“SHOW CREATE VIEW”。DESCRIBE命令可以查看视图的字段信息,语法为“DESCRIBE 视图名;”,可简写为“DESC 视图名;”;而“SHOW CREATE VIEW”命令可以查看视图的详细信息,语法为“SHOW CREATE V…

    2022年9月18日
    76100
  • mysql如何修改存储引擎为innodb

    两种修改方法:1、使用SET语句临时修改默认存储引擎,语法为“SET default_storage_engine=innodb;”,当重启客户端后就会恢复为原引擎类型。2、使用ALTER TABLE语句修改,语法“ALTER TABLE 表名 ENGINE=innodb;”,可以修改指定表的引擎类…

    2022年9月21日
    1.2K00
  • 项目管理体系包括哪些

    项目管理是有效整合资源、高效实现项目目标的一整套独特的管理理念、方法论体系。它包含10大知识领域,5大过程和49个子过程;而要做好项目管理必须具备2大核心技能,以及过程中可能会用到的10个项目管理工具;做好项目管理我们通常要面临7大难点。下面我们将对这些内容进行详细说明。 一、什么是项目管理 官方解…

    2022年3月19日
    1.0K00
  • windows驱动精灵检测不到打印机如何解决

    解决方法: 方法一: 可能是驱动安装错误或者是驱动出现了问题。 这时打开驱动精灵重新检测一遍即可。 1、进入主界面后点击“立即检测”。 2、可以选择将提示更新的驱动进行“升级”,或者直接点击“一键安装”安装驱动。 方法二: 可能是有老驱动的残留没删干净。 先将老驱动清理干净,在使用驱动精灵进行下载即…

    2022年9月10日
    60300
  • mysql如何将日期转为数字

    2种将日期转为数字的方法:1、使用TO_DAYS()函数,可以将指定日期值转为代表天数的整数值,语法“TO_DAYS(指定日期值)”。2、使用TIME_TO_SEC()函数,可以将指定日期时间值转为代表秒数的整数值,语法“TIME_TO_SEC(指定日期时间值)”。 本教程操作环境:windows7…

    2022年9月21日
    1.1K00
  • 禁止SpringBoot在项目中使用Tomcat容器的原理是什么

    SpringBoot中的Tomcat容器 SpringBoot可以说是目前热门的Java Web框架了。它将开发者从繁重的xml解救了出来,让开发者在几分钟内就可以创建一个完整的Web服务,极大的提高了开发者的工作效率。Web容器技术是Web项目必不可少的组成部分,因为任Web项目都要借助容器技术来…

    2022年9月19日
    74300
  • Vue中slot插槽作用与原理是什么

    1、作用 父组件向子组件传递内容 扩展、复用、定制组件 2、插槽内心 2.1、默认插槽 把父组件中的数组,显示在子组件中,子组件通过一个slot插槽标签显示父组件中的数据。 子组件 <template> <div class=”slotChild”> <h5>{{…

    2022年9月22日
    96700
  • SpringBoot项目中怎么实现MySQL读写分离

    1、MySQL主从复制 但我们仔细观察我们会发现,当我们的项目都是用的单体数据库时,那么就可能会存在如下问题: 读和写所有压力都由一台数据库承担, 压力大 数据库服务器磁盘损坏则 数据丢失 ,单点故障 为了解决上述提到的两个问题,我们可以准备两 (多) 台MySQL,一台主( Master )服务器…

    2022年9月15日
    50900
  • 如何进行Apache Solr JMX服务RCE漏洞复现

    0x00简介 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。 该漏洞源于默认配置文件solr.in.s…

    2022年9月13日
    59100
  • Apache Commons Collections反序列化漏洞的示例分析

    一、简介 虽然网上已经有很多文章对这个组件的反序列化漏洞进行分析,但在这里还是记录一下。毕竟,这对Java反序列化漏洞的发展意义重大。 Apache Commons Collections是Java应用开发中一个非常常用的工具库,它添加了许多强大的数据结构,简化了Java应用程序的开发,已经成为Ja…

    2022年9月8日
    83900
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部