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

       

Навигация с Помощью Курсоров


Сначала указатель курсора позиционируется перед первым рядом виртуальной таблицы. Метод next используется для перемещения между записями виртуальной таблицы. Этот метод передвигает указатель на следующий ряд и возвращает true, когда следующий ряд виртуальной таблицы найден. Если следующего ряда нет, next возвращает false.

Например, предположим, что виртуальная таблица имеет столбцы с названиями title, rentalDate и dueDate. Следующий код использует next для итерации по рядам и отображения значений столбцов в таблице:

// Создаём курсор.


custs = connobj.cursor ("select * from customer");

// Проверяем курсор и отсутствие ошибок БД.

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

write ("<TABLE>");   // Итерация по рядам с отображением значений.


   while (custs.next()) {
       write ("<TR><TD>" + custs.title + "</TD>" +
          "<TD>" + custs.rentalDate + "</TD>" +
          "<TD>" + custs.dueDate + "</TD></TR>");
   }

   write ("</TABLE>");

   // Всегда закрывайте курсоры по окончании работы!


   custs.close();

}

Этот код даст на выходе:

Clockwork Orange

6/3/97

9/3/97

Philadelphia Story

8/1/97

8/5/97

Вы не всегда можете находиться в нужном месте в курсоре. Например, предположим, что Вы создаёте курсор и, пока Вы работаете с ним, кто-то добавляет ряд в таблицу. В зависимости от установок БД, этот ряд может появиться в Вашем курсоре. Исходя из этого, когда это удобно (как при обновлении рядов), Вы можете сделать так, чтобы Ваш код проверял, находится ли указатель в нужном ряду.



Содержание раздела