是这样的我已经用java连接了数据库,我现在要做个登陆框,
怎么样去判断数我输入的用户名和密码与数据库中的表记录是否配对,
知道的请指教,谢谢了,我自己写的最后老是抛异常,这是怎么回事啊!

解决方案 »

  1.   

    String name = request.getParameter("name");
    String pwd= request.getParameter("pwd");Class.forName("...");
    Connection conn = DriverManager.getConnection("...");
    PreparedStatement pst = conn.prepareStatement("select * from table where name=? and pwd=?") ;
    pst.setString(1, name);
    pst.setString(2, pwd) ;
    ResultSet rs = pst.executeQuery() ;if(rs.next())
    {
      out.println("登陆成功");
    }
    else
    {
    out.println("登陆失败");
    }
      

  2.   

    代码如下:敬请指教,谢谢了(简写)
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection conn=DriverManager.getConnection("jdbc:odbc:datasheng");
    Statement stmt=conn.createStatement();
    String user=jtextuser.gettext();//文本框
    String pass=jpasswd.gettext();//密码框
    String strsql="select * from tableshe where username='"+user+"'and password='"++pass"';
    ResultSet rs=stmt.executeQuery(strsql);//执行到这就抛常了
    int count=0;
    while(rs.next())
    {
    count++;
    }
    if(count>0)
    System.out.println("用户名和密码正确");
    请回,谢谢
      

  3.   

    你的sql语句怎么写的,笔误吗?  ++pass"'
      

  4.   

    ResultSet rs=stmt.executeQuery(strsql);这句话的时候不是有try{}
    catch{}语句吗?
    它就到catch{}中执行了,下面的语句就不执行了,
      

  5.   

    catch中加一句 out.println(ex.toString());看看打印什么异常
      

  6.   

    String strsql="select * from tableshe where username='"+user+"'and password='"+pass+"'";
    另外可能是你帐户与密码不匹配,最好在catch中加一句 out.println(ex.toString());
    看看是什么异常,再确定一下在你的数据库里他们是不是正确的
      

  7.   

    u should surround ur code with try catch...