`
hj149
  • 浏览: 86220 次
  • 性别: Icon_minigender_1
  • 来自: 河北
社区版块
存档分类
最新评论

访问oracle数据库出错:用尽的Resultset

阅读更多
郁闷死了,这个小问题害的我改了一天,看来还是基本功不到家,希望大家别犯这个错了:

如下代码就会引发这个错误:

    resultSet = stmt.executeQuery(sqlStr);
    if (resultSet !=null ) {
     resultSet.getInt(1);
    }


错误原因:

这是因为ResultSet的游标指向开头,为空所以 resultSet.getInt(1); 会认为游标指向了结尾——也就是游标记录遍历“尽”了。

将代码改为:

    resultSet = stmt.executeQuery(sqlStr);
    if (resultSet.next()){
     resultSet.getInt(1);
    }
分享到:
评论

相关推荐

    JAVA连接ORACLE数据库方法及测试

    private String url = "jdbc:oracle:thin:@localhost:1521:ORCL"; private String driver = "oracle.jdbc.driver.OracleDriver"; private String user = "www"; private String password = "www"; // 主函数 ...

    Dbutils项目实例

    StringTrimmedResultSet :去除ResultSet中中字段的左右空格 Trim ">1 对于数据表的读操作 他可以把结果转换成List Array Set等java集合 便于程序员操作; 2 对于数据表的写操作 也变得很简单(只需写sql语句) 3 ...

    java数据库连接ResultSet

    java数据库连接ResultSet

    Commons-dbutils1.7 jar包.rar

    commons-dbutils包是Apache开源组织提供的用于操作数据库的工具包。简单来讲,这个工具包就是用来更加方便我们操作数据库的,最近工作中使用了一下,感觉确实方便很多,基本告别自己封装JDBC代码对数据库进行增删改...

    数据库结果集ResultSet判断为空记录数缺少一行和没有记录但永不为空问题

    最近在做毕业设计,需要用到数据库,在用结果集ResultSet判断的时候遇到一个郁闷的事情。 一开始我的想法是这么一个框架: ResultSet rs = dao.executeQuery(sql); if(rs不为空){ while(rs.next()){ … } }else{ … ...

    JDBC访问数据库的步骤

    JDBC访问数据库的步骤 1. 新建java项目:JDBC,新建 class文件:TestJDBC 2. JDBC用到的类库基本都位于java.sql.*包中,程序中引入该包: Import java.sql.*; 3. 添加要用的数据库中的包,找到数据库中的Driver....

    通过反射从数据库返回集合ResultSet中得到实体对象的list集合

    通过反射从数据库返回集合ResultSet中得到实体对象的list集合

    JSP通过JDBC访问数据库

    //创建访问数据库的对象 results=state.executeQuery(query); //查询并返回结果 } catch(SQLException e) { System.err.println("Data.executeQuery: " + e.getMessage()); } return results; ...

    本地时间生成函数 time

    可以有效的生成本地时间,如2011-5-12 13:17

    jdbcObjectMapper:JDBC ResultSet对象映射器

    假设我们的ResultSet代表这样的列。 这些列是从表的某些联接(付款,用户,公司)中选择的,并且这些列在一个查询结果中:id,payment_date,payment_amount,user_id,user_name,user_surname,company_id,...

    jdbc连接数据库getConnection 增、删、改、查

    String url = "jdbc:oracle:thin:@127.0.0.1:1521:orcl"; String user = "scott"; String password = "scott"; String Driver="oracle.jdbc.driver.OracleDriver"; Connection conn = null; try { Class.forName...

    Oracle连接方法

    ("jdbc:oracle:thin:@ip address:1521:ORA1", "scott", "tiger"); Statement stmt = conn.createStatement(); ResultSet rset = stmt.executeQuery ( "select BANNER from SYS.V_$VERSION" ); 如果驱动包没有...

    Java数据库访问工具JDBC

    String strUrl = "jdbc:Oracle:thin:@10.87.66.30:1521:oshr"; Statement stmt = null; ResultSet rs = null; Connection conn = null; CallableStatement proc = null; try { Class.forName(driver)...

    简单留言板

    String DBURL = "jdbc:oracle:thin:@localhost:1521:dbnews"; String USERNAME = "scott"; String USERPASS = "orcl"; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; int flag = 0...

    Java+JSP成绩与课程管理升级(测试完成)

    1、修改了数据库访问:以前是在代码中写死的数据库配置,现在只需在config.properties相应的配置项,配置中默认用的oracle数据,其它数据库选择相应的配置。增加相应的JAR包(放在webapps\kjglxt\WEB-INF\lib下)。...

    如何从 Java 存储过程将 JDBC ResultSet 作为 Ref Cursor 返回.doc

    JDBC ResultSet 是一个表示数据库的数据表,通常通过执行查询数据库的语句产生该表。REF CURSOR 是 PL/SQL 中相应的类型。Java 存储过程的调用规范将 ResultSet 映射到 REF CURSOR。在 Oracle9i 之前,不可能从 Java...

    Java WEB访问数据库

    在使用statement获取jdbc访问时所具有的一个共通的问题是输入适当格式的日期和时间戳:2002-02-05 20:56 或者 02/05/02 8:56 pm。 通过使用java.sql.preparedstatement,这个问题可以自动解决。一个...

    读取数据库信息到xml

    //oracle数据库 Class.forName("com.mysql.jdbc.Driver");//mysql数据库 conn=DriverManager.getConnection("jdbc:mysql://192.168.1.109/cpsad?user=root&password=admin&useUnicode=true&characterEncoding=UTF-8...

    用java写的一个数据库连接池

    <url>jdbc:oracle:thin:@192.168.1.7:1521:TESTDB <username>appuser <password>111111 <maxPoolSize>1 oracle.jdbc.driver.OracleDriver <url>jdbc:oracle:thin:@192.168.1.151:1521:myDB ...

    数据库的连接 数据库的连接

    数据库的连接源代码 文件SQLConnect.java: package SQLConnect; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; /** * SQLConnect代码 *...

Global site tag (gtag.js) - Google Analytics