關於「ORA 01000 超出開啟游標的最大數」

2021-09-08 02:17:27 字數 442 閱讀 3347

當我們需要查詢資料庫,並且返回的結果集有多條記錄時,如何一條條的定位讀取記錄呢?這時候就需要游標了。 oracle中所謂的游標,用來標記當前所指向的位置,預設是在第一條記錄之前,rs.next,就下移一位,一直到最後一條記錄之後。

資料庫的連線一般都會占用一定的資源,如何保證連線的速度以及系統的效率,實在是值得我們權衡一下。今天遇到的問題其實只是乙個不小心,將乙個for迴圈中賦值的reader物件的關閉操作放在了迴圈之外。其實每次執行read操作,都會占用oracle的cursors資源,因為游標一直在不停的開啟,而且沒有關閉,也難怪會造成ora01000的異常了,對於這種情況,單純的加大open_cursors並不是好辦法,那只是治標不治本,實際上,**中的隱患並沒有解除。看來**必須要經過實際應用,最好是大資料量的錘煉~

2023年的最後一篇感言,關於oracle~

2009,新的任務,新的挑戰,期待ing~~~

ORA 01000案例分析,游標超限

最近做櫃檯開發,自己通過c ocilib執行 oracle資料庫的儲存過程,獲取分頁表資訊,儲存過程如下 create or replace procedure p rm paging query p pagesql in varchar2,sql p curpage in out number 當...

超出開啟游標的最大值

zc 個人感覺,在 j a程式設計中,出現上述異常,基本是由於 資料庫操作沒有關閉 釋放 造成。1 來自網路 在j a 中,執行conn.createstatement 和conn.preparestatement 的時候,實際上都是相當與在資料庫中開啟了乙個curso 2 基本的情況為 每次 開啟...

關於ORA 01000錯誤產生的原因和解決辦法

經過不斷嘗試,發現 如果是更新該錶的主key,就會發生發生ora 01000錯誤 如果是更新該錶的其他字段,並不會發生ora 01000錯誤 如果要刪除該錶的資料,就會發生ora 01000錯誤 如果向該錶插入資料,並不會發生ora 01000錯誤 檢查資料庫的open cursors,發現open...