тексте представляет собой псевдоним таблицы. Использование VALUE и
обычного варианта запроса иллюстрируется в следующем примере:
DECLARE
CURRENT_ID BOOK_S.ID%TYPE;
CURRENT_TITLE BOOK_S.TITLE%TYPE;
CURRENT_AUTHOR BOOK_S.AUTHOR%TYPE;
CURRENT_PRICE BOOK_S.PRICE%TYPE;
CURRENT_BOOK BOOK_T;
BEGIN
SELECT * INTO CURRENT_ID, CURRENT_TITLE,
CURRENT_AUTHOR, CURRENT_PRICE FROM BOOK_S
WHERE ID = 10;
SELECT VALUE(B) INTO CURRENT_BOOK FROM
BOOK_S B WHERE ID = 10;
END;
При формировании объектной таблицы, где объекты – строки, каждо-
му объекту присваивается идентификатор.
Идентификатор объекта —
это уникальный указатель на устойчивый объект конкретного типа, ко-
торый однозначно определяет объект. Идентификаторы объектов уни-
кальны по всему пространству БД Oracle: два объекта не могут иметь
один и тот же идентификатор. Если даже объект удаляется, этот номер
никакому другому объекту никогда не присваивается. Идентификатор
объекта – это внутрисистемная структура; общее число идентификаторов
составляет 2
128
различных значений.
Идентификаторы объекта имеются только у объектов-строк и строк
объектных представлений. Если объект имеет идентификатор, на этот
объект можно ссылаться. Ссылка на объект описывается в разделе объ-
явлений или указывается в описании таблицы и выглядит следующим
образом:
имя_переменной REF объектный_тип,
где имя_переменной – это имя ссылки на объект, а объектный_тип – оп-
ределенный ранее объектный тип.
Ссылки на объекты можно указывать в блоках PL/SQL и в SQL-
операторах, используя при этом операции VALUE и REF.
Достарыңызбен бөлісу: