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)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
亿速云的头像亿速云
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

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

分享本页
返回顶部