executeQuery() - 返回结果集

时间:2015-04-07 19:33:28

标签: java mysql executequery

我在返回结果集中收到此错误。 无法将Resultset中的结果转换为double

是不是可以返回双倍?我该怎么办?

public double getBalance( String name )
{
    ResultSet resultSet = null;

   try 
   {
       selectBalance.setString( 1, name ); // specify last name

      // executeQuery returns ResultSet containing matching entries
      resultSet = selectBalance.executeQuery(); 


      while ( resultSet.next() )
      {
         resultSet.getDouble("balance");

      } // end while
   } // end try
   catch ( SQLException sqlException )
   {
      sqlException.printStackTrace();
   } // end catch

   return resultSet;
} 
提前谢谢!

1 个答案:

答案 0 :(得分:1)

如果需要,你应该返回一个双倍的内容:

public double getBalance( String name )
{
    double result = 0.0;
    ResultSet resultSet = null;

   try 
   {
       selectBalance.setString( 1, name ); // specify last name

      // executeQuery returns ResultSet containing matching entries
      resultSet = selectBalance.executeQuery(); 


      while ( resultSet.next() )
      {
         result = resultSet.getDouble("balance");

      } // end while
   } // end try
   catch ( SQLException sqlException )
   {
      sqlException.printStackTrace();
   } // end catch

   return result;
} 

请注意,这只会返回从结果集的最后一行读取的值,因此如果您希望返回多行,请考虑返回List<Double>