Серверный JavaScript 1.4. Руководство по использованию


         

а затем циклически проходит по



   if ( resobj && (connobj.majorErrorCode() == 0) ) {       // Сначала перемещает указатель resultSet-объекта к первому // ряду результирующего набора, а затем циклически проходит по рядам.
       while (resObj.next())
      {
          write("<TR><TD>" + resObj.name + "</TD>");

         write("<TD>" + resObj.city + "</TD>");

          write("<TD>" + resObj.id + "</TD></TR>");
      }

      resobj.close();
   }
}

До тех пор, пока в результирующем наборе имеется следующий ряд, метод next возвращает true и перемещает указатель к следующему ряду. Если указатель достиг последнего ряда результирующего набора, метод next возвращает false.

Предыдущий пример работает с хранимой процедурой Sybase. В этом случае resultSet -объект содержит именованное свойство для каждого столбца результирующего набора. Для процедур Informix и DB2, по контрасту, объект не содержит именованных столбцов. В этом случае Вы можете получить значения, ссылаясь на позицию столбца. Так, для Informix и DB2 Вы можете использовать такой код для вывода аналогичной информации:

spobj = connobj.storedProc("getcusts");

if ( spobj && (connobj.majorErrorCode() == 0) ) {    // Создаётся новый resultSet-объект.

   resobj = spobj.resultSet();

   // Перед тем как продолжить, убедитесь, что Вы получили результирующий набор.

   if ( resobj && (connobj.majorErrorCode() == 0) ) {

      // Сначала перемещает указатель resultSet-объекта к первому // ряду результирующего набора, а затем циклически проходит по рядам.

      while (resObj.next())
      {

          write("<TR><TD>" + resObj[1] + "</TD>");
          write("<TD>" + resObj[2] + "</TD>");
          write("<TD>" + resObj[0] + "</TD></TR>");
       }
      resobj.close();
   }
}

Вы можете использовать позицию столбца для результирующих наборов любой БД, а не только с Informix и DB2. Вы можете использовать имя столбца для хранимой процедуры всех типов БД, а не только Informix или DB2.


Содержание  Назад  Вперед