如何从查询中获取单个值而非结果集

5

我有一个JSP文件,它针对Oracle数据库运行一个select语句。

所有我看到的示例都使用类似以下的代码:

Statement st=connection.createStatement();
ResultSet rs=st.executeQuery("Select * from data");
 while(rs.next(){
String name=rs.getString("name");
String add=rs.getString("address");
out.println(name+" "+add);
 }

我将永远不会有多行返回,是否有除ResultSet和while循环之外的替代方法来获取返回的单行数据?

你的意思是从数据库中获取一行数据吗? - Hardik Mishra
@HardikMishra 是的,我只会得到一行数据,目前这一行数据中只有一个值。 - Baxter
1个回答

12

我曾经使用过类似的方法来验证用户登录。

    String sql = "SELECT * FROM login WHERE username=? AND password=?";
    try {
          PreparedStatement statement;
          statement = connection.prepareStatement(sql);

          statement.setString(1, "hardik"); // set input parameter 1
          statement.setString(2, "welcome"); // set input parameter 2
        ResultSet rs = statement.executeQuery();
        if(rs.next()){
            // fetch data from resultset
        }
    }catch(SQLException sqle){
        sqle.printStackTrace();
    }

2
我希望这只是一个例子,你并没有真的将密码以明文形式保存在数据库中。 - targumon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接