【问题标题】:My program is not validating the card number and pin.Even after entering the correct card number and pin it's showing invailid [closed]我编写的查询中是否有任何错误无法使用数据库验证数据? [关闭]
【发布时间】:2022-06-10 17:46:49
【问题描述】:

这是我的项目的登录按钮,它没有给我想要的结果。它没有将我引导至交易页面:

else if(ae.getSource()==login)
{
    Conn conn=new Conn();
    String cardnumber=cardTextField.getText();
    String pinnumber=pinTextField.getText();
    
    String query;
    query = "select * from login where Card_Number ='"+cardnumber+"' and Pin ='"+pinnumber+"'";
    
    try {
        ResultSet  rs=conn.s.executeQuery(query);
        if(rs.next()){
            setVisible(false);
            new Transactions(pinnumber).setVisible(true);
        }else{
            JOptionPane.showMessageDialog(null,"Incorrect Card Number or Pin");
        }
    } catch (Exception e) {
        System.out.println(e);
    }

当我输入卡号和密码时,它只显示消息对话框,即卡号和密码不正确,尽管我输入的是数据库中的值。我正在为我的数据库使用 sqlyog。请指导我哪里出错了。

【问题讨论】:

  • 1) 首先尝试使用硬编码数据执行 SQL,以确保 SQL 和与数据库的连接正常工作。 2) 然后将 SQL 转换为使用PreparedStatement。 PreparedStatement 将使您的参数在 SQL 语句中的格式正确。有关使用 PreparedStatement 的最基本示例,请参阅:stackoverflow.com/questions/24081941/…
  • 使用值直接对数据库执行查询,看看是否可行

标签: java mysql jdbc


猜你喜欢
  • 2013-02-21
  • 2022-01-24
  • 1970-01-01
  • 2016-11-20
  • 1970-01-01
  • 2010-09-13
  • 2021-08-01
  • 2012-07-06
  • 2014-01-12
相关资源
最近更新 更多