【问题标题】:How to get information from the same column java and sqljava和sql如何从同一列获取信息
【发布时间】:2020-04-14 23:58:46
【问题描述】:

所以我正在尝试创建一个应用程序,并且我让用户在登录时只输入一个 pin。我想根据他们的职位打开一个新的 JFrame。在我的数据库中,我在用户表中创建了一个名为“职业”的列。如何获取该列中的信息,以便根据其职位创建不同的 IF 语句?


     try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/restaurantdb", "root","");
            String sql = "Select * from users where pin=?";
            PreparedStatement pst = con.prepareStatement(sql);
            pst.setString(1, PinField.getText());
            ResultSet rs = pst.executeQuery();
            if (rs.next()){
                JOptionPane.showMessageDialog(null, "Login Succesful");
                /*if (occupation = "Server") {

                New ServerWindow
                }
                */
            }
            else{
                JOptionPane.showMessageDialog(null, "Login Failed");
                PinField.setText("");

            }
            con.close();

        }
        catch(Exception e){
            JOptionPane.showMessageDialog(null, e);
        }
    }    

【问题讨论】:

    标签: java sql swing


    【解决方案1】:
    Preparedstatement job=con.prepareStatement("SELECT 
    Occupation FROM USERS WHERE PIN=?"); 
    job.setString(1,PinField.getText());
    
    try(ResultSet myJob=job.executeQuery())
    {
     if(myJob.next())
     {
      String theJob=myJob.getString("Occupation");
    
      if(theJob.equals("Whatever u want");{/*open frame 1*/}
      if(theJob.equals("Whatever u want 2");{/*open frame 2*/}
     }
    }
    

    由于您已经在 ResultSet rs 中拥有完整数据,请执行此操作

      String theJob=rs.getString("Occupation");
    
      if(theJob.equals("Whatever u want");{/*open frame 1*/}
      if(theJob.equals("Whatever u want 2");{/*open frame 2*/}
    

    【讨论】:

      猜你喜欢
      • 2014-02-11
      • 1970-01-01
      • 2012-06-24
      • 1970-01-01
      • 2013-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多