Выборка данных в PL/SQL

Страницы работы

Содержание работы

Выборка данных в PL/SQL

·  Неявные курсоры

·  Явные курсоры

·  Курсорные переменные

·  Курсорные выражения

·  Динамические SQL-запросы

Термины, связанные с выборкой данных

·  Результирующий набор строк.  Набор строк, содержащий результирующие данные, определяемые SQL-инструкцией.

·  Неявный курсор.  Курсор, автоматически создаваемый PL/SQL при каждом выполнении DML-инструкции (INSERT, UPDATE, DELETE) или инструкции SELECTINTO.

·  Явный курсор.  Инструкция SELECT, явно определенная в программе как курсор.

·  Курсорная переменная.  Объявленная переменная, указывающая на объект курсора. Ее значение во время выполнения программы может меняться. Может передаваться в качестве параметра процедуре или функции.

·  Атрибут курсора.  Внутренняя переменная Oracle, возвращающая информацию о состоянии курсора. Имеет формы  %имя_атрибута и добавляется к имени курсора или курсорной переменной.

·  Инструкция SELECTFORUPDATE.  Разновидность инструкции SELECT, устанавливающая блокировку на каждую возвращаемую запросом строку данных. Запрещает другим пользователям изменять данные, пока вы с ними работаете.

·  Пакетная обработка.  Поддерживает запросы с предложением BULKCOLLECT (начиная с Oracle8i). Позволяет за один раз загрузить из базы данных более одной строки в коллекции PL/SQL.

Атрибуты курсора

Наименование

Возвращаемое значение

%FOUND

TRUE, если успешно выбрана хотя бы одна строка

%NOTFOUND

TRUE, если инструкция не выбрала ни одной строки

%ROWCOUNT

Количество строк, выбранных из курсора на данный момент

%ISOPEN

TRUE, если курсор открыт

%BULK_ROWCOUNT

Коллекция, в которой для каждого элемента исходной коллекции оператора FORALL указано количество строк, обработанных SQL-инструкцией

%BULK_EXCEPTIONS

Коллекция, в которой для каждого элемента исходной коллекции оператора FORALL, вызвавшего программную ошибку, указано инициированное исключение

Атрибуты курсоров нельзя применять в SQL-инструкциях.

1. Неявные курсоры

PL/SQL автоматически создает неявный курсор для каждой выполняемой инструкции DML (INSERT, UPDATE, DELETE) или инструкции SELECTINTO. Курсор называется неявным, т.к. Oracle автоматически выполняет многие связанные с ним операции. Для обращения к такому курсору используется ключевое слов SQL.

Похожие материалы

Информация о работе