Наборы курсора
Наборы курсора
Оператор SELECT может объявлять набор, который вовсе не является выходным для клиента, но остается на сервере, чтобы работать как курсор на стороне сервера. Сам курсор является указателем; приложение дает ему указание по запросу читать по порядку строки одну за другой на основании подготовленного (prepared) оператора SELECT.
Объявление именованного курсора, который должен быть вначале скомпилирован в ESQL или задан в структуре API в DSQL, включает переменную оператора клиентской стороны, которая указывает на этот оператор. Клиентское приложение является ответственным за то, что подготовленный оператор доступен для назначения соответствующему указателю при выполнении программы.
PSQL имеет языковое расширение, которое принимает следующую форму:
FOR SELECT <любая допустимая спецификация выборки>
INTO <список предварительно объявленных локальных переменных> DO
BEGIN
Необязательные действия над переменными>;
SUSPEND;
END
Это синтаксис неименованного курсора[65].
Целью операций с курсором является использование данных из набора курсора и последовательное "действие" с каждой строкой набора курсора. Это может быть эффективным для наборов пакетных процессов, где выполняется одна или более задач над текущей строкой курсора в рамках одной итерации в цикле над набором курсора. Например, в каждой итерации элемент данных должен быть получен из текущей строки набора курсора и использован для добавления новой строки в указанный входной набор.
Другой оператор может быть связан с открытым курсором при использовании WHERE CURRENT OF <имя-курсора> вместо условия поиска для выполнения позиционированного изменения или удаления строк, "отмеченных" набором курсора.
Реализация курсоров
Firebird предоставляет несколько методов для реализации курсоров.
* Встраиваемый SQL (ESQL) предоставляет оператор DECLARE CURSOR[66] для реализации предварительно компилированного объявления именованного курсора.
* Для использования курсора динамическое приложение должно предварительно объявить его в функции isc_dsqi_set_cursor_name[67]. Только некоторые компоненты реализуют такой интерфейс, большинство других - нет.
* Язык PSQL предоставляет синтаксис для работы с именованными и неименованными курсорами локально внутри хранимой процедуры или триггера. Подробную информацию см. в главе 29.
! ! !
ПРИМЕЧАНИЕ. За исключением техник работы с курсорами в PSQL сами курсоры выходят за пределы темы настоящей книги. Подробную информацию см. в главе 30.
. ! .
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
24.2.3. Перемещение курсора
24.2.3. Перемещение курсора Как и в большинстве программ, курсор терминала используется библиотекой S-Lang для обозначения позиции, принятой по умолчанию, для ввода текста и для подсказки пользователю. Программы S-Lang могут перемещать курсор с помощью показанной ниже
Параметры курсора
Параметры курсора CSS предоставляет нам одну очень интересную возможность — указание вида курсора мыши, который он примет при наведении на данный элемент Web-страницы. Это может быть полезно при создании специальных эффектов.Атрибут стиля cursor устанавливает форму курсора
Выделение пункта полосы навигации при наведении на него курсора мыши
Выделение пункта полосы навигации при наведении на него курсора мыши Ну, это мы уже сделали. В листинге 16.3 приведен написанный нами в главе 14 JavaScript-код. Листинг 16.3 var ceLinks = Ext.select("UL[id=navbar] LI"); ceLinks.on("mouseover", function(e, t) { Ext.get(this). addClass("hovered"); }); ceLinks.on("mouseout", function(e, t) { Ext.get(this).
Параметры курсора
Параметры курсора CSS предоставляет нам одну очень интересную возможность — указание вида курсора мыши, который он примет при наведении на данный элемент Web-страницы. Это может быть полезно при создании специальных эффектов.Атрибут стиля cursor устанавливает форму курсора
Выделение пункта полосы навигации при наведении на него курсора мыши
Выделение пункта полосы навигации при наведении на него курсора мыши Ну, это мы уже сделали. В листинге 16.3 приведен написанный нами в главе 14 JavaScript-код. Листинг 16.3 var ceLinks = Ext.select("UL[id=navbar] LI"); ceLinks.on("mouseover", function(e, t) { Ext.get(this). addClass("hovered"); }); ceLinks.on("mouseout", function(e, t) { Ext.get(this).
Использование курсора в программе Probe
Использование курсора в программе Probe Из строки меню выберите Trace, Cursor, Display, и на экране появится поле Probe Cursor. Оно может появиться в правой нижней части, но его при желании можно переместить и в другую область экрана. Поле содержит следующую информацию:А1 = 4.0000K, -27.025А2 = 4.0000K,
Наборы данных
Наборы данных Запрос DML определяет логическую совокупность элементов данных, упорядоченных слева направо, из одного или более столбцов, называемую набором. Запрос может ограничивать спецификацию набора одной строкой или же набор может состоять из множества строк. В
След от курсора
След от курсора Исходный файл: Cursortrail.fla Рассмотрим спецэффект, создание которого невозможно без использования ActionScript. В нашем примере, когда пользователь перемешает мышь, за курсором остается характерный шлейф, состояший из таюших копий изображения, привязанного к
21.2.5. Изменение положения курсора
21.2.5. Изменение положения курсора Команду tput также можно применять для отображения курсора в произвольном месте экрана. При этом используется следующий формат:cup r cгде r — это номер ряда (строки) в нижней части экрана, а с — номер столбца на экране.Лучше применять эту