我在通过一个方法从数据库查询出一个ResultSet 结果集(定义对象为 rs),然后while(rs.Next()){},在循环里面我把rs当参数调用另一个方法。另一个方法代码片段:
String name;
try
{
if (rs.getString(1) == null)
name = null;
else
name = rs.getString(1).trim();
}
catch (SQLException ex)
{
ex.printStackTrace(); }
结果一运行到if (rs.getString(1) == null)这一句就直接抛出去了:java.sql.SQLException: No data found
我debug了一下,把rs.getString(1) watch了一下,里面有值啊!怎么会这样呢,求高手解答!!!!!!!
问一个恶心的ResultSet 结果集问题!!!
答案:3 悬赏:50 手机版
解决时间 2021-02-04 14:15
- 提问者网友:暮烟疏雨之际
- 2021-02-04 08:38
最佳答案
- 五星知识达人网友:woshuo
- 2021-02-04 08:57
你用的什么数据库,据说有些数据库是不能连续两次取同一列的值的。
所以你这样写试试
String name;
String tem = rs.getString(1);
try
{
if (tem == null)
name = null;
else
name = tem .trim();
}
catch (SQLException ex)
{
ex.printStackTrace(); }
所以你这样写试试
String name;
String tem = rs.getString(1);
try
{
if (tem == null)
name = null;
else
name = tem .trim();
}
catch (SQLException ex)
{
ex.printStackTrace(); }
全部回答
- 1楼网友:独行浪子会拥风
- 2021-02-04 09:34
先把name赋值为null,看一下能不能行。
- 2楼网友:几近狂妄
- 2021-02-04 09:18
if (rs.getString(0) == null)
name = null;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯