连接oracle数据库
PreparedStatement stmt=conn.prepareStatement("select * from table");
ResultSet rs=stmt.executeQuery();
int count;
while(rs.next())
{
  count++;
  <%=rs.getString(1)%>
}查询的数据量很大,6万多条,但是最终只能显示3万多条(我通过同样的方法连接mysql能正常显示,我想应该不是缓存的问题),如果注释掉<%=rs.getString(1)%>,count的计数也是正常的,但是就是在显示数据的时候无法显示完全。(我也试过不显示在页面上而直接写入txt文件中,结果一样,也是数据不全)求解决

解决方案 »

  1.   

    BAIDU GOOGLE找不到相关问题
    求高人解决
      

  2.   

    你确定你的oracle和mysql那个表里数据都是6万多条吗
    也有可能显示3万多条时,并没有显示完,还在继续查询
      

  3.   

    我只是用mysql来比较  mysql里即使查询更大的(查过10万条记录),页面也能显示全,但是操作oracle里的数据时,数据就显示不全。我也设置了count,在不输出数据的时候,count的计数是正常(就是那6万条记录),但是要显示这些记录或者写入txt就无法完全显示,同时count的计数也没有6万条了(每次刷新这个数字都不一样)
      

  4.   

    也就是加入这些记录的显示的时候,rs.next的循环提前退出了
      

  5.   

    oracle 用plsql查询不能超过100M.
    不知程序是否也不允许100M?
      

  6.   

    100M是没有的,通过pl/sql能得到所需要的6万条记录而且查询的页面每次查询的记录数都不一样(比如第一次查到3万条,刷新一次只有2万条,继续刷新只有几千条了)
      

  7.   

    PreparedStatement stmt=conn.prepareStatement("select * from table");
    ResultSet rs=stmt.executeQuery();
    int count;
    while(rs.next())
    {
      count++;
      <%=rs.getString(1)%>
    }rs.getString();括号中应该是一个字符串(就是你的数据表的列的名字比如那一列是 name,则应该写成
                rs.getString(“name"););在你的这段代码里面好像没有count。没有起到作用,应该可以去掉。
      

  8.   

    rs.getString(name)和rs.getString(1)功能来说是一样,count只是我用来测试用的