ename	VARCHAR2(10)
job	VARCHAR2O)
mgr	NUMBER(4) hiredate DATE
sal	NUMBER(7,2)
comm	NUMBER(7, 2)
dept	REF dept_type
Такой синтаксис позволяет задать для REF область определения (т.е. ограничить ссылку указанием на единственную именованную таблицу), но делать это не обязательно. Тем не менее, ссылочные указатели являются строго типизированными (что необычно для SQL) и могут использоваться только для указания на объект соответствующего типа.
Отметим, что для объектной таблицы dept_t не нужно использовать какой-то новый или специальный синтаксис предложений SELECT и языка DML. Для традиционных предложений SQL она выглядит, как обычная таблица, поскольку, несмотря на то что каждая строка представляет собой объект, тип dept_type включает только встроенные типы.
Только объектные таблицы, т.е. таблицы, определенные с использованием синтаксиса CREATE TABLE OF TYPE, могут иметь ссылочные указатели. Такие таблицы нельзя секционировать, что может ограничить их применение для данных очень большого объема.
Ссылочные указатели имеют ряд интересных особенностей. Одна из наиболее важных состоит в следующем. Несмотря на то, что ссылочный указатель должен быть действительным при записи в строку, не требуется, чтобы он продолжал оставаться действительным в дальнейшем. В результате при использовании REF либо необходимо применять триггеры, которые предотвращают удаление строк, являющихся субъектом REF, либо весь код должен рассматривать повисшие (dangling) REF (т.е. указывающие на то, чего больше не существует) как нормальное явление и обрабатывать их соответствующим образом.
Совет:
Необходимость обеспечения целостности ссылочных указателей в приложении вызывает ряд серьезных проблем проектирования (которые мы, возможно, рассмотрим в какой-нибудь из следующих книг). На данном этапе при работе с REF мы советуем обеспечивать в приложении обработку повисших REF.
Мы можем присвоить значение REF, выполнив запрос к таблице, на которую должна делаться ссылка:
UPDATE emp SET dept = (SELECT REF(d)
FROM dept_t d WHERE deptno = 10) WHERE empno = 7900;
5. Объекты	99