public int getFL_numbers(){ 
no();//no()方法里是连接数据库的必要代码 
String sql = "select count(*) from fenlei"; 
ResultSet rs = null; 
int k=0; 
try { 
rs = stmt.executeQuery(sql); 
if(rs.next()) 
k = rs.getInt(1);
} catch (SQLException e) { 
e.printStackTrace(); 

关闭数据连接;
return k;//这里不知道要怎么处理暂时这样写 

解决方案 »

  1.   


    public int getFL_numbers(){ 
    no();//no()方法里是连接数据库的必要代码 
    String sql = "select * from fenlei"; 
    int count = 0;
    String str = "select count(*) from fenlei";//第二种方法
    ResultSet rs = null; 
    int k=0; 
    try { 
    rs = stmt.executeQuery(sql); 
    rs = stmt.executeQuery(str); if(rs.next()) 
    count++;//这是第一种
    k = rs.getRow(); 
    int num=rs.getInt(1);//第二种方法
    [/color]
    conn.close();//本来想写在finally里面的,但是一直报错。所以就写在这里了 
    return k; 
    } catch (SQLException e) { 
    e.printStackTrace(); 

    return 100;//这里不知道要怎么处理暂时这样写 

      

  2.   

    2楼的方法我试了可以的4楼的回答的比较全,不过再用select * from fenlei;的时候需要把if(rs.next())改成while(rs.next())这样count++才会持续执行.(ps:这是我刚想到的)谢谢大家的回答
      

  3.   

    rs.getRow()代表当前行号
    你上面之所以取出来是1
    那是因为你本来就是取法第一行
    所以说一
    建议使用rs.getString(列数);
    这个比较快速
    当然不是所有地方都用rs.getString()
    还可以用getInt()
    根据具体情况而定