好像在一个sqlRst中,不能用两次sqlRst.getString(1)

解决方案 »

  1.   

    哎,java的机制天生就是有一定的问题,这种问题我碰到不止一次了,这和光标的位置有关,你默认创建的statement是只读的,而且它只能向前滚动,当你取出一次值后它就到下一个记录去了,你在取前一次的,当然取不了。
    解决办法,创建statement时,这样来:
    Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
    这样你就可以用下面的方法取两次或n次
    sqlRst.getString(1);sqlRst.absolut(1);sqlRst.getString(1);sqlRst.absolut(1);sqlRst.getString(1);即每取一次,光标要重新定位。当然定位的值由你定,第一行是1
    ,第n行就主sqlRst,absolut(n);