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约束与多表查询实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL约束与多表查询实例分析”吧! 1.约束 概述 概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。 目的:保证数据库中数据的正确、有效性和…

    2022年9月18日
    87300
  • SQL查询怎么给表起别名

    可以通过空格或者as给表起别名 但是注意如果操作的数据库是Oracle的话,只能使用空格,as不符合Oracle的语法。 举个栗子 简单查询中使用别名 select *from student swhere s.id = ’10’; 在简单的查询中使用别名,一般没有特别需要注意的地方,要做的操作少 …

    2022年9月8日
    58700
  • mysql中delete in子查询不走索引问题怎么解决

    问题复现 MySQL版本是5.7,假设当前有两张表account和old_account,表结构如下: CREATE TABLE `old_account` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT ‘主键Id’, `name` varchar(2…

    2022年9月10日
    88500
  • mysql和myisam有哪些区别

    mysql和myisam的区别是:mysql是一个关系型数据库管理系统,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据,而myisam是mysql的默认数据库引擎(5.5版之前),并且不支持事务处理。 本教程操作环境:windows10系统、mysql8.0.22…

    2022年8月27日
    40900
  • config文件有什么作用

    config文件是软件或者系统中配置文件的意思;该文件中包含了设置和配置信息以及不同的程序可以以不同的格式存储这些数据,并且不建议删除该文件,因为该文件在用户开机这段时间对计算机进行初始化设置,也就是用户对系统的设置都由该文件来对计算机进行恢复。 本教程操作环境:windows10系统、DELL G…

    2022年9月15日
    2.0K00
  • windows deepl如何卸载

    deepl卸载方法 1、点击控制面板。 2、点击“程序和功能” 3、右键想要卸载的软件,卸载maya的这里就右键maya。 4、点击卸载即可。 以上就是“windows deepl如何卸载”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如…

    2022年9月26日
    1.6K00
  • windows中该内存不能为written如何解决

    该内存不能为written解决方法 一、如果能排除硬件上的原因(内存条不兼容,更换内存。显卡驱动是否正确按装或者是否被恶意覆盖否?)往下看: 二、系统或其它软件引起的,可用下述方法处理: 1.系统本身有问题,及时安装官方发行的补丁,必要时重装系统。 2.病毒问题:杀毒。 3.杀毒软件与其它软件冲突:…

    2022年9月2日
    1.1K00
  • 如何使用redis实现分布式缓存

    分布式缓存描述: 分布式缓存重点是在分布式上,相信大家接触过的分布式有很多中,像分布式开发,分布式部署,分布式锁、事物、系统 等有很多。使我们对分布式本身就有一个很明确的认识,分布式就是有多个应用程序组成,可能分布在不同的服务器上,最终都是在为web端提供服务。 分布式缓存有以下几点优点: 所有的W…

    2022年9月13日
    99500
  • Java多态的概念和特点是什么

    一、多态的概念 继承关系使一个子类能继承父类的特征,并且附加一些新特征。子类是它的父类的特殊化,每个子类的实例都是其父类的实例,但是反过来不成立。例如:每个圆都是一个几何对象,但并非每个几何对象都是圆。因此,总可以将子类的实例传给需要父类型的参数。参考案例如下: public class Polym…

    2022年9月1日
    44100
  • 如何做好项目管理

    做好项目管理有两个必须具备的核心技能:1、SMART原则;2、PDCA循环;除此以外,在项目进行的过程中我们还有:明确且达成共识的项目目标、有效的规划控制、制定项目标准及流程、合理的资源管理、建立完善的交流管理体系、利用有效的管理手段、激励等8个必须注意的点。 一、做好项目管理必须具备的两大核心技能…

    2022年3月19日
    50300
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

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

分享本页
返回顶部