有人能帮我解决下面的问题吗???

xjqxgjs
有人能帮我解决下面的问题吗???

在通过java语言在access中执行sql语句时
str=number.getText();
try{
     Connection con=DriverManager.getConnection(strurl);
      Statement stm=con.createStatement();
      ResultSet rs1=stm.executeQuery("SELECT*FROM table1 WHERE 学号="+str);
      strp=(String)rs1.getString("密码");
      rs1.close();
      stm.close();
      con.close();
    }catch(SQLException e2)
    {
      System.out.print("error:"+e2.getMessage());
    }
运行时总是出现“标准表达式中数据类型不匹配“的错误,我查过一些资料也找不出为什么,还请高手指点一二

ahpo
strp=(String)rs1.getString("密码");

似乎这一句的(String) 不需要

rs.getString()返回的类型本来就是String

caojiqun
[b][size=5][color=Red]if(rs1.next())[/color][/size][/b]   strp=(String)rs1.getString("密码");

[b][size=5][color=Red]while(rs1.next())[/color][/size][/b]   strp=(String)rs1.getString("密码");

楼上说的也不错,不过只是个小瑕疵

[[i] 本帖最后由 caojiqun 于 2008-5-3 15:27 编辑 [/i]]