当前位置: 技术问答>java相关
ResultSet can not re-read row data for column 3.这是什么原因?
来源: 互联网 发布时间:2015-10-06
本文导语: aq.executeQuery: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 3. aq.STRSQL:: select * from [user] where username='aaa' 这是tomcat报的一个错误,是什么原因呢? SQLServer 2K + jdk + tomcat ...
aq.executeQuery: [Microsoft][SQLServer 2000 Driver for JDBC]ResultSet can not re-read row data for column 3.
aq.STRSQL:: select * from [user] where username='aaa'
这是tomcat报的一个错误,是什么原因呢?
SQLServer 2K + jdk + tomcat
aq.STRSQL:: select * from [user] where username='aaa'
这是tomcat报的一个错误,是什么原因呢?
SQLServer 2K + jdk + tomcat
|
sql的驱动不支持ResultSet的重复取值!如果你用的是oracle就不会出这样的错误了!我想你能够把ResultSet中的数据放到Vector中,这样就可以重复取值了,我就是这样做的!:)呵呵!
还是oracle好阿!
还是oracle好阿!
|
如果你采用的微软自己提供的sqlserver jdbc驱动,它支持ResultSet的重复取值,但如果你的表结构有所改动,比如修改了字段名,或者在某个位置插入一个字段,就会出现你碰到的问题
我觉得应该是jdbc驱动的bug,用下面的办法倒可以解决该问题,但不是很理想,逼不得已
pstmt = conn.prepareStatement(strSql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
good luck!
我觉得应该是jdbc驱动的bug,用下面的办法倒可以解决该问题,但不是很理想,逼不得已
pstmt = conn.prepareStatement(strSql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
good luck!
|
你是不是读过了然后有返回来读了?
|
你建的结果集不支持指针滚动。