0
Я выполнил тот же запрос в моем интерфейсе db напрямую и получил две строки в результате ... Я думал, что тоже должен быть таким же ... но он возвращает только один, а для второго он указывает индекс столбца из диапазона 2> 1 !!!Почему мой результирующий набор содержит только один результат, когда он должен был получить два результата.
session= request.getSession();
String name=(String)session.getAttribute("user");
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/mutualfund", "root", "");
Statement statement = connection.createStatement();
String qry="SELECT `account_type_id` FROM `cust_accounts` WHERE `cust_id`=\""+name+"\"";
ResultSet rs = statement.executeQuery(qry) ;
if(!rs.next())
{
out.println("Server Down.. Please try again later ");
}
else {
String one=rs.getString(1);
String two=rs.getString(2);
}
Да, это правильно. Если вы когда-либо ожидали, что там будет более двух строк, вы должны обернуть 'rs.next()' в цикле while. – superEb
@APPU: Абсолютно. Кроме того, помните, что указанный выше код оставит 'two' пустой строкой, если возвращается только одна строка! –
@ Russell Uhl sheesh !!! Я хочу сломать голову! Спасибо большое!! такая простая вещь !! Спасибо :) –