当前位置: 首页>C++>正文

Oracle的for循環執行順序詳解

Oracle的for循環執行順序詳解

oracle 測試for 循環:
1.經常會有要寫for 循環的場景:
for 循環名 in (循環體) loop end loop;

2.問題背景:
for 循環體內的執行順序,究竟是查詢了結果集,再去跑循環,還是每一次都會重新獲取結果集;

3.問題:
我對循環體內的表進行增刪改,會不會影響到我的循環結果;

4.測試:
1)建表+插入數據:

create table TMP_TEST_ZLR 
(
orderlineno  varchar2(100),
descr        varchar2(100))insert into TMP_TEST_ZLR(orderlineno,descr) values('1','第一行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('2','第二行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('3','第三行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('4','第四行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('5','第五行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('6','第六行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('7','第七行數據');
insert into TMP_TEST_ZLR(orderlineno,descr) values('8','第八行數據');

表的數據結果:
在這里插入圖片描述

2)寫循環:

  declare r_int int;beginr_int := 1;for r in (select * from TMP_TEST_ZLR a order by a.orderlineno) loopif r_int = r.orderlineno thendbms_output.put_line(r.descr);end if;delete from TMP_TEST_ZLR a where a.orderlineno = '2';commit;r_int := r_int+1;end loop;end ;

解釋:
–1.我在跑循環的過程中,刪了這個某一行測試表的數據,想要看看是否會干擾for 循環的執行
1)如果是以先查出結果集來跑循環的,那應該會打印出我的第二行數據;
2)如果不是,那就只會有7行數據;

3)最終結果:
打印:在這里插入圖片描述
數據表結果:
在這里插入圖片描述

5.結論
1.for 循環體內的執行順序:先全查,得到了結果集,再去跑循環,循環體內的表進行增刪改,循環體的結果集數據不變;

https://www.zydui.com/af19bUm8CDQ9TC1UD.html
>

相关文章:

  • Pytorch學習筆記——Contiguous vs non-contiguous tensor
  • 問題 A: 英雄聯盟陣營
  • 英雄聯盟用什么語言編寫?C/C++ yyds
  • X光機申請日本PMDA認證指南《藥品與醫療器械法》
  • C++:for循環執行順序
  • 大小寫字母轉換、數字與字符轉換及ASCII碼表
  • 2020 年,蘋果的 AI 還有創新嗎?
  • 上古卷軸3晨風職業_《上古卷軸》全系列回顧及劇情簡介
  • 架構之美筆記
  • Solid Converter pdf v9.x注冊碼
  • 「冰果」一曲新時代的招隱之歌
  • android病毒可以殺掉嗎,央視曝光史上最嚴重危害Android病毒“幽靈推”
  • linux查看是否有漏洞,Linux Lite開發者推傻瓜式腳本:輕松查看是否已修復CPU漏洞...
  • 「MtOI2019」幽靈樂團
  • 搶跑全球同性社交第一股 Blued能否借粉紅經濟“博君一笑”?
  • 基于jetson nano和yolov5?的 車行人檢測(一)
  • MIT
  • 【C++進階】智能指針(萬字詳解)
  • YonBuilder專業版開發之新增規則操作(回錄視頻操作)第貳篇
  • 【C4D】模型倒角時出現破面,倒角不了,怎么辦?
  • c4dr17語言,(全部更新完畢)(魚魚老師中文字幕)C4DR17全面基礎教程
  • C4D R19學習之 001界面認識
  • 使用CCProxy搭建部署linux centos7內網代理上網
  • 看程序學css-4 綜合應用
  • 數據分析--經典語錄匯總
  • Data Mining數據分析經典語錄匯總
  • 2015下半年蘇子語錄《我的人生感悟…
  • 調侃計算機專業的句子,適合調侃的幽默句子
  • pandas數據讀取處理詳解
  • 扎實基礎深入篇(六):while循環帶動生產力