查询字符串:
    String comboStr = "select a.name as aname,b.name as bname from syscolumns a, systypes b,sysobjects c where a.xtype=b.xtype and a.id=c.id and c.name=?";    MySql comboSql = new MySql(comboStr);
    String tempTableName = "Author";
    comboSql.setString(1,tempTableName);
    ResultSet rs = comboSql.executeQuery();MySql是封装数据库操作的一个类,经多次在其它地方使用,验证没有错误
把comboStr 考到查询分析器里面并加上表名就能查出来记录,在这里用rs.getRow()总是返回0
就是没有记录啊!怎么回事?这是毕业设计中的问题,很急!

解决方案 »

  1.   

    只有PreparedStatement对象才有setString(int,String)这个方法,而你的conbosql对象是什么?肯定不是PreparedStatement对象,所以不能有结果。
      

  2.   

    不对,现在情况是我要选出两个值,可是只能选出rs.getString(1)
    不能rs.getString(2)
    报错java.sql.SQLException: No data found怎么回事?
      

  3.   

    MySql是封装数据库操作的一个类不如直接用preparestament语句吧。
      

  4.   

    因为这是为通用数据库准备的,所以专门用一个类。肯定不是preparestament问题,因为已经能查出第一列的值,第二列就出不来了
    就是rs.getString(1)能用,rs.getString(2)就报错
      

  5.   

    呵呵,你因该  先 rs.afterLast()然后再rs.getRow()rs.getRow()是取游标的当前行
      

  6.   

    KFeng_bird(欲定志,力克己,无愧与人)的答案  是对的。
      

  7.   

    先用rs.next()
    如果不行,说明mysql中你存的是中文,编码转换没处理好
    建议先用字母试一试
      

  8.   

    no data found一般都是两次取相同字段