resultSet.next () прибывает 'false', даже если он был выполнен как true в предыдущем выражении - PullRequest
0 голосов
/ 23 января 2019

Я пытаюсь выполнить запрос и сохранить результат в наборе результатов с именем 'objRs'.При оценке оператора if «objRs» оценивается как «истина», а код в случае выполнения блока if выполняется.Но в приведенном ниже утверждении «objRs» означает «ложь».

Более ясную картину см. В приведенном ниже коде:

 if (objRs!= null && objRs.next()) //the statements in this block is                 //executed
   {
                        user_Name = objRs.getString("login_name");
                        user_id = objRs.getString("user_id");
                        corp_id = objRs.getString("corp_id");
                        corp_grp_id = objRs.getString("corporate_group");
                        f_name = objRs.getString("first_name");
                        l_name = objRs.getString("last_name");
                        moNumber = objRs.getString("cont_mobile");
                        gender = objRs.getString("gender");
                        address = objRs.getString("address");
                        city = objRs.getString("b_adr1_city");
                        state = objRs.getString("b_adr1_state");
                        country = objRs.getString("b_adr1_country");
                    }                                  
                }   

                @SuppressWarnings("unused")
                Boolean test = objRs.next();  //the value of test is showing //as 'false' while debugging.

Приведенный выше код является частью попытки'block.

Пожалуйста, предложите такое решение, чтобы' objRs 'не становилось' false 'в приведенном выше случае.

Ответы [ 2 ]

0 голосов
/ 23 января 2019

Если вы хотите, чтобы test var имел значение вашего objRs.next() вызова в if, просто сделайте следующее

Boolean test;
if (objRs!= null && test=objRs.next())
{
  ...
}   
0 голосов
/ 23 января 2019

Согласно ResultSet.next() каждый вызов этого метода перемещается к следующей записи в наборе результатов, пока не будет возвращено false, указывающее, что больше нет результатов.

Перемещает курсор на одну строку от текущей позиции.Курсор ResultSet изначально расположен перед первой строкой;первый вызов метода next делает первую строку текущей строкой;второй вызов делает вторую строку текущей строкой и т. д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...