2014-11-03 62 views
-1

我有问题。在我的方法中Java从数据库中选择在哪里条件

public void selectUser(String name, String surname) 

我尝试登录用户。 Inialize您PreparedStatement对象

String sql = "select * from user where surname= (here my surname from method parameter) and name= (name from method parameter) "; 

回答

2

PreparedStatement pst = null; 
pst = c.prepareStatement("select * from user where surname= ? and name= ? "); 
      pst.setString(1, getterMethodHere); 
      pst.setString(2, getterMethodHere); 

1,2代表surname= ? and name= ?符号分别

Learn More . .

0

圣Krish感谢:我怎么可以准备一个SQL statment赞一个。现在如何使用rs.next,因为我不明白prepareStatemnt。

下面的代码

enter code here 



     //stat = con.createStatement(); 
     //String sql = "select * from user where surname= "+surname+" and name="+name; 
     PreparedStatement pst = null; 
     pst = con.prepareStatement("select * from user where surname= ? and name= ? "); 
     pst.setString(1, name); 
     pst.setString(2, surname); 
     ResultSet rs = pst.executeQuery(); 



     while (rs.next()) { 
      //get from column name 

      String id = rs.getString("id"); 
      String login = rs.getString("login"); 
      String password = rs.getString("password"); 

      //print 

      System.out.print(" id: " + id); 
      System.out.print(", login: " + login); 
      System.out.println(", pass: " + password); 
     } 

和如何返回ID?

+0

迭代结果集与之前相同。你正在以正确的方式去做 – 2014-11-03 11:16:23

+0

那么,为什么我看不到我的ID,登录和传递? – user1765664 2014-11-03 11:28:45