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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle隐藏游标,Oracle 存储过程隐藏游标

發布時間:2024/4/14 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle隐藏游标,Oracle 存储过程隐藏游标 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

sql%rowcount用于記錄修改的條數,就如你在sqlplus下執行delete from之后提示已刪除xx行一樣,這個參數必須要在一個修改語句和commit之間放置,否則你就得不到正確的修改行數。

例如: sql> declare n number; 2 begin 3 insert into test_a select level lv from dual connect by level<500; 4 n:=sql%rowcount; 5 commit; 6 dbms_output.put_line(n); 7 end; 8 / 499

如果我連續執行了3個select語句 然后調用sql%rowcount,得到的結果是最后一個select的條數。 要統計所有的,可以使用三個變量接收sql%rowcount,然后相加即可,不過貌似直接select的寫法無法使用sql%rowcount。

在執行DML(insert,update,delete)語句時,可以用到以下三個隱式游標(游標是維護查詢結果的內存中的一個區域,運行DML時打開,完成時關閉,用sql%isopen檢查是否打開):

sql%found(布爾類型,默認值為null)

sql%notfound(布爾類型,默認值為null)

sql%rowcount(數值類型默認值為0)

sql%isopen(布爾類型)

當執行一條DML語句后,DML語句的結果保存在四個游標屬性中,這些屬性用于控制程序流程或者了解程序的狀態。當運行DML語句時,PL/sql打開一個內建游標并處理結果,游標是維護查詢結果的內存中的一個區域,游標在運行DML語句時打開,完成后關閉。隱式游標只使用sql%FOUND,sql%NOTFOUND,sql%ROWCOUNT三個屬性.sql%FOUND,sql%NOTFOUND是布爾值,sql%ROWCOUNT是整數值。

sql%FOUND和sql%NOTFOUND在執行任何DML語句前sql%FOUND和sql%NOTFOUND的值都是NULL,

在執行DML語句后,sql%FOUND的屬性值將是:

. TRUE :INSERT

. TRUE :DELETE和UPDATE,至少有一行被DELETE或UPDATE.

. TRUE :SELECT INTO至少返回一行

當sql%FOUND為TRUE時,sql%NOTFOUND為FALSE。

sql%ROWCOUNT

在執行任何DML語句之前,sql%ROWCOUNT的值都是NULL,對于SELECT INTO語句,如果執行成功,sql%ROWCOUNT的值為1,如果沒有成功或者沒有操作(如update、insert、delete為0條),sql%ROWCOUNT的值為0.

sql%ISOPEN

sql%ISOPEN是一個布爾值,如果游標打開,則為TRUE,如果游標關閉,則為FALSE.對于隱式游標而言sql%ISOPEN總是FALSE,這是因為隱式游標在DML語句執行時打開,結束時就立即關閉。

no_data_found與sql%notfound以及sql%rowcount 的區別:

NO_DATA_FOUND:該異常可以在兩種不同的情況下出現:第一種:當SELECT。。。。INTO語的WHERE子句 沒匹配任何數據行時;第二種:試圖引用尚未賦值的PL/sql index-by表元素時。

sql%NOTFOUND:是隱匿游標的屬性,當沒有可檢索的數據時,該屬性為:TRUE;常作為檢索循環退出的條件。若某UPDATE或DELETE語句的WHERE子句不匹配任何數據行,該屬性為:TRUE,但不并不出現NO_DATA_FOUND異常.

sql%ROWCOUNT:該數字屬性返回了到目前為止,游標所檢索數據庫行的個數。

總結

以上是生活随笔為你收集整理的oracle隐藏游标,Oracle 存储过程隐藏游标的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。