关于jsp中 对只转发结果集的无效操作: last 异常
生活随笔
收集整理的這篇文章主要介紹了
关于jsp中 对只转发结果集的无效操作: last 异常
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
因為初學,所以,在建立Statement時使用默認參數。導致在使用執行rs.last()時,產生“java.sql.SQLException:對只轉發結果集的無效操作:last”的異常。
最后在建立Statement時加入相關參數,就可以解決了。
操作查詢結果集的過程中出現異常 出現異常的語句: rs.last(); ? 異常的詳細信息:對只轉發結果集的無效操作: last 解決辦法:? stat = conn.createStatement(); ???????? 改為 stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); 就可以了 分析: 異常出現于移動結果集的指針時,原因是在生成statement對象的時候提供的參數不同 無參數的那個方法使用的是默認參數,statement執行后得到的結果集類型為 ResultSet.TYPE_FORWARD_ONLY.這種類型的結果集只能通過rs.next();方法逐條讀取,使用其他方法就會報異常. 如果想執行一些復雜的移動結果集指針的操作就要使用其他參數了 順便簡單介紹一下各個參數:ResultSet.TYPE_FORWARD_ONLY?? (略) ResultSet.TYPE_SCROLL_INSENSITIVE? 雙向滾動,但不及時更新,就是如果數據庫里的數據修改過,并不在ResultSet中反應出來。 ResultSet.TYPE_SCROLL_SENSITIVE? 雙向滾動,并及時跟蹤數據庫里的更新,以便更改ResultSet中的數據。 ResultSet.CONCUR_READ_ONLY? 只讀取ResultSet ResultSet.CONCUR_UPDATABLE??用ResultSet更新數據庫
最后在建立Statement時加入相關參數,就可以解決了。
操作查詢結果集的過程中出現異常 出現異常的語句: rs.last(); ? 異常的詳細信息:對只轉發結果集的無效操作: last 解決辦法:? stat = conn.createStatement(); ???????? 改為 stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); 就可以了 分析: 異常出現于移動結果集的指針時,原因是在生成statement對象的時候提供的參數不同 無參數的那個方法使用的是默認參數,statement執行后得到的結果集類型為 ResultSet.TYPE_FORWARD_ONLY.這種類型的結果集只能通過rs.next();方法逐條讀取,使用其他方法就會報異常. 如果想執行一些復雜的移動結果集指針的操作就要使用其他參數了 順便簡單介紹一下各個參數:
轉載于:https://www.cnblogs.com/mingal/archive/2007/03/07/666373.html
總結
以上是生活随笔為你收集整理的关于jsp中 对只转发结果集的无效操作: last 异常的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ConcurrentHashMap 源码
- 下一篇: C语言判断某个字符串中 是否存在子字符串