Размещение объектов в базе данных. В PL/SQL имеется возмож-
ность для создания объектов двух типов: устойчивых и неустойчивых,
что определяет их свойства, а также операции, которые разрешено вы-
полнять над ними. Устойчивым(persistent) объектом называется объект,
хранящийся в базе данных, а неустойчивым(transient) – объект, объяв-
ленный локально в блоке PL/SQL. С завершением работы блока PL/SQL
неустойчивый объект разрушается. Устойчивый объект остается доступ-
ным до тех пор, пока не будет удален явным образом. Приведем пример
неустойчивого объекта BOOK:
DECLARE
FORM1 VARCHAR2(40);
-- Создание объекта.
BOOK BOOK_T := BOOK_T (10, 'Война и мир', 'Толстой Л.', 5000);
BEGIN
BOOK.CHANGE_PRICE(7000);
FORM1 := BOOK.FORMATTED_NAME;
-- Занесение значений атрибутов TITLE, AYTHOR, PRICE
-- в таблицу TEST_T;
INSERT INTO TEST_T VALUES(FORM1, BOOK.PRICE);
END;
По завершении работы блока объект BOOK будет разрушен. Сохра-
нится лишь информация, занесенная в таблицу TEST_T.
Устойчивые объекты хранятся в таблицах базы данных, как и стан-
дартные скалярные типы. Существует два различных способа хранения
объектов в таблице: в качестве объекта-строки или объекта-столбца.