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); -- 5050 end;
批量插入
-- 批量插入 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循环如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注蜗牛博客网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。版权声明:如无特殊标注,文章均为本站原创,转载时请以链接形式注明文章出处。
评论