当前位置: 技术问答>java相关
在线等待:rs.next()的问题
来源: 互联网 发布时间:2017-03-28
本文导语: 小弟用where(rs.next()){}时,总是将第一条记录漏掉; 用do{}where(rs.next());时,又总是发出“无效的游标状态”的错误信息。 怎么处理? | 這種情況我以前也遇到過. 我是先 if(rs.next()) { } 然後再whil...
小弟用where(rs.next()){}时,总是将第一条记录漏掉;
用do{}where(rs.next());时,又总是发出“无效的游标状态”的错误信息。
怎么处理?
用do{}where(rs.next());时,又总是发出“无效的游标状态”的错误信息。
怎么处理?
|
這種情況我以前也遇到過.
我是先
if(rs.next())
{
}
然後再while(rs.next())
{}
.你用的是sql server吧.
我是先
if(rs.next())
{
}
然後再while(rs.next())
{}
.你用的是sql server吧.
|
数据库是SQL server,rs的指针是在第一条记录的前面,
数据库是Oracle,rs的指针指向第一条记录。
数据库是Oracle,rs的指针指向第一条记录。
|
rs.next();
get the first record;
while(rs.next())
{
}
get the first record;
while(rs.next())
{
}
|
当记录集刚刚生成的时候,它的指针是在第一条记录之前的,所以如果你前面没有进行任何操作的话,while语句应该是对的,你检查一下
|
lwd01(mouse)
ResultSet rs应该和什么数据库没有关系吧
这个语句又不是数据库的部分,只是记录从数据库中得到的数据集
ResultSet应该是一种JSP的数据结构,和用数据库有什么关系呢?
我没用过Oracle,不知道我的想法有没有错。
ResultSet rs应该和什么数据库没有关系吧
这个语句又不是数据库的部分,只是记录从数据库中得到的数据集
ResultSet应该是一种JSP的数据结构,和用数据库有什么关系呢?
我没用过Oracle,不知道我的想法有没有错。
|
while(rs.next()){
...}
真会漏掉记录?我好象从来没碰见过啊!
...}
真会漏掉记录?我好象从来没碰见过啊!
|
>数据库是Oracle,rs的指针指向第一条记录。
不可能的, 我每天也对着oracle 做rs.next()
不可能的, 我每天也对着oracle 做rs.next()
|
不会呀,rs=stmt.executeQuery(sql);
while(rs.next())
{rs.getString();}
while(rs.next())
{rs.getString();}
|
it's while,not where
不会两种情况都出错,不知你怎么写的
不会两种情况都出错,不知你怎么写的
|
代码
|
while(rs.next()){
...}
...}
|
你不贴出较完整的代码,我们怎么判断呀
只可能是其它地方还有问题,因为上面两个情况本身就是矛盾的
只可能是其它地方还有问题,因为上面两个情况本身就是矛盾的
|
你是不是在用到rs.next()前就对记录集进行了操作比如说rs.getrow();rs.last();rs.frist();
|
可以肯定的是在你进行while(rs.next())之前一定已经对rs进行了操作,检查你的源程序,也可以贴出来大家看看