最简单的办法是打印出sql,看看到底执行的是什么?有没有被执行?
或者打开sqlserver 2000 的“事件探查器”,看看提交的select到底是什么?

解决方案 »

  1.   

    out.print(rs.getRow()); 这句话输出的几??
    然后你确定没有出异常吗?我感觉可能没查到记录。。
      

  2.   

    to bootupnow :请问下如何打印SQL语句???
    to ee4456: out.print(rs.getRow()); 输出0。另外,上面的代码运行正常,数据库也是正常。
    总之我感觉是一切正常,但不知道为什么查不出记录.
    谢谢二位!!
      

  3.   

    to bootupnow :请问下如何打印SQL语句???
    to ee4456: out.print(rs.getRow()); 输出0。另外,上面的代码运行正常,数据库也是正常。
    总之我感觉是一切正常,但不知道为什么查不出记录.
    谢谢二位!!
      

  4.   

    请问下如何打印SQL语句??? 
    -----------------------System.out.pringln(sql);
      

  5.   

    差不出来啊?
    sql写错了吧。想验证也简单,别整悬的,写个sql在数据库客户端一跑,看看有记录没,有了的话,再直接写进jsp里,看看效果,最后再去自己拼,呼呼。
      

  6.   

    检查一下
    String name=request.getParameter("uname"); 
    String password=request.getParameter("password");
    这两个有没有值。
      

  7.   

    楼上的可能性最高// 你打印出来看看吧!
    // 如果有,对照数据库看一下是否完全相同
    System.out.println("username="+name);
    System.out.println("password="+password);
    ps.setString(1,name); 
    ps.setString(2,password); 
      

  8.   

    感谢各位~~
    我想我的问题应该是url那里写错了
    String DBURL ="jdbc:microsoft:sqlserver://migo:1400;DataBase=usermessage"; 
    应该是DataBaseName
    但是我想问下各位,为什么我写成DataBase依然可以连上数据库??
      

  9.   

    确定接收到了uname和password吗??
      

  10.   

    ,为什么我写成DataBase依然可以连上数据库??
    因为 系统把 DataBase 认为是一个其它的自定义参数处理了这个连接会使用该用户的默认数据库
      

  11.   

    并没有什么错,只是你没能理解rs.getRow()这个语句的意思而已,他是返回现在游标所在的行数,你刚开始还没有rs.next(),当然回返回0了!