首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过结果集的getdate()查询没有抛出当前行异常

问通过结果集的getdate()查询没有抛出当前行异常
EN

Stack Overflow用户
提问于 2012-05-26 05:01:32
回答 3查看 1.4K关注 0票数 0

我这里有一个问题,我想要做的是从表中获取当前日期和一列。到目前为止,我的代码如下:

代码语言:javascript
复制
s = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rset = s.executeQuery("select getdate() as date, tglpengiriman from orders");
java.sql.Date date = rset.getDate("date");
java.sql.Date tglkirim = rset.getDate("tglpengiriman"); 

并在上面代码的第3行抛出异常"no current row in ResultSet“。我的代码出了什么问题?也许是错过了对ResultSet用法的理解?

谢谢你的回复。

编辑:已应答。请参阅下面@Christopher的帖子。谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-26 05:05:46

在调用任何ResultSet.get*方法之前,需要先调用ResultSet.next。请看一下Statement、ResultSet等的文档。还要确保在'finally‘块中关闭所有资源。

票数 3
EN

Stack Overflow用户

发布于 2012-05-26 05:06:47

在从结果集中获取数据之前,您需要调用rset.next()。检查rset.next()是否返回true也是明智的。

票数 0
EN

Stack Overflow用户

发布于 2012-10-22 15:02:11

像这样迭代结果集的数据

代码语言:javascript
复制
while (resultSet.next()) {
java.sql.Date date = rset.getDate("date");
java.sql.Date tglkirim = rset.getDate("tglpengiriman"); 
}

因为结果集的初始位置总是在第一条记录之前,即在第一条记录的开头,所以这个resultSet.next()使你的结果集指向第一条记录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10761315

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档