日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle cur notfound,%notfound的理解——oracle存儲過程 | 學步園

發(fā)布時間:2025/3/15 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle cur notfound,%notfound的理解——oracle存儲過程 | 學步園 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文檔中的解釋:It returns TRUE if an INSERT, UPDATE, or DELETE statement affected no rows, or a SELECT INTO statement returned no rows. Otherwise, it returns FALSE.

這個解釋更加精妙:

%NOTFOUND is the logical opposite of %FOUND. %NOTFOUND yields FALSE if the last fetch returned a row, or TRUE if the last fetch failed to return a row

錯誤的例子:

tableA

id? name

1?? a

2?? b

declare

cursor v_cur is select name from tableA;

n varchar2(10);

begin

open v_cur;

loop

exit when v_cur%notfound;

fetch v_cur into n;

dbms_output.put_line(n);

close v_cur;

end loop;

end;

執(zhí)行上面的語句,結(jié)果為:

a

b

b

發(fā)現(xiàn)最後一條記錄被列印了兩次。原因是%notfound是判斷最後一次fetch的結(jié)果,把bfetch到變數(shù)n中之後再執(zhí)行exit when %notfound判斷得到的是false的記過,也就是說是有返回行的,所以判斷通過,再此執(zhí)行了列印語句。

發(fā)現(xiàn)了另一個疑問:

把a,b都fetch之後按理說游標(biāo)已經(jīng)空了,那麼第三次應(yīng)該是fetch的空值,為什麼列印出來的還是b呢??

因為fetch..into語句末尾不會修改into變數(shù)後面的值。就像select..into如果沒有數(shù)據(jù)會報異常,但是不會把into後面的變數(shù)置為空

再寫一段代碼

declare

cursor v_cur is select name from tableA where name = 'c';

n varchar2(10);

begin

open v_cur;

loop

exit when v_cur%notfound;

n:='hehe'

fetch v_cur into n;

dbms_output.put_line(n);

close v_cur;

end loop;

end;

執(zhí)行代碼的結(jié)果:

hehe

疑問:游標(biāo)是空游標(biāo),也就是說游標(biāo)在打開的時候就沒有指向任何的值。但為什麼exit when v_cur%notfound;這條語句還通過了呢??

oracle文檔的解釋:

Before the first fetch, %NOTFOUND returns NULL. If FETCH never executes successfully, the loop is never exited, because the EXIT WHEN statement executes only if its WHEN condition is true. To be safe, you might want to use the following EXIT statement instead:

EXIT WHEN c1%NOTFOUND OR c1%NOTFOUND IS NULL;

也就是說v_cur%notfound有三種狀態(tài),true,false,null。所以以後為了安全期間可以加上是否為空的判斷

總結(jié)

以上是生活随笔為你收集整理的oracle cur notfound,%notfound的理解——oracle存儲過程 | 學步園的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产高清视频免费观看 | 亚洲国产精品人人爽夜夜爽 | 男人午夜天堂 | 嫩草影院在线观看视频 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产在线精品成人欧美 | 欧美一区二区三区成人 | 台湾佬美性中文娱乐 | 黑人添美女bbb添高潮了 | 亚洲成av人片在www色猫咪 | av成人资源| 国产中文一区 | 深夜网站在线观看 | 国产精品国产三级国产三级人妇 | 亚洲av无一区二区三区怡春院 | 国产无码精品久久久 | 一级特黄高清 | 日本涩涩视频 | 国语对白做受69按摩 | 成人黄色一级视频 | 亚洲a成人 | 人人干人人看 | 色丁香六月 | 国产精品久久久免费 | 免费成人深夜夜行网站视频 | 7777奇米影视 | 午夜青青草 | 婷婷俺也去 | 中日韩在线观看 | 91精品国产高清一区二区三蜜臀 | 黄色永久网站 | 国产精品1234 | 美国一区二区 | 亚日韩 | 麻豆社 | 色哟哟在线 | 欧美精品动漫 | 在线日韩一区 | 免费观看毛片网站 | 成人免费看片' | 亚洲精品乱码久久久久久蜜桃91 | 色哟哟无码精品一区二区三区 | 高潮毛片无遮挡高清免费 | 日韩精品在线观看一区二区 | 日韩经典在线观看 | 亚洲国产成人精品视频 | 久久www视频 | 99福利影院| 97超碰人人在线 | 成人午夜激情 | 国模视频一区 | 青青草在线免费 | 欧美成人看片黄a免费看 | 青青草在线播放 | 久久精品免费av | 精品中出 | 91视频观看 | 国产全是老熟女太爽了 | 爱情岛亚洲首页论坛小巨 | 99久久香蕉 | 国产欧美日韩在线播放 | 亚洲伊人天堂 | 亚洲视频中文字幕在线观看 | 欧美精品午夜 | 香蕉久久夜色精品国产使用方法 | 日本免费小视频 | 天天干天天综合 | 久久精品国产亚洲AV成人雅虎 | 亚洲色图图片 | 人妻少妇一区二区三区 | 麻豆久久久久久久久久 | 国产精品www色诱视频 | 农村妇女精品一区二区 | 日韩美女性生活 | 蜜臀尤物一区二区三区直播 | 伊人一级 | 午夜视频在线免费观看 | 狼人精品一区二区三区在线 | 日韩不卡一二三 | 成人丁香婷婷 | 精品无码在线视频 | 嫩草嫩草嫩草嫩草嫩草嫩草 | 色综合天天综合网天天看片 | 欧美国产高清 | 九九热在线免费视频 | 911福利视频 | 日韩成人av在线 | 亚洲精品一区二区三区不卡 | 韩国明星乱淫(高h)小说 | 日韩黄色精品 | 婷久久| 久操视频免费看 | 中字av在线 | 少妇人禽zoz0伦视频 | 中文字幕在线视频一区二区三区 | 台湾色综合 | 天天射天天射 | 日日色av | 黑人vs日本人ⅹxxxhd |