DeepEdit!

Программирование баз данных на Oracle, техническая документация, литература, статьи и публикации

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Семейство типов ROWID

В этом семействе представлены два типа:        и UROWID. UROW1D доступен в Огас1е8 г и выше.
ROWID Тип PL/SQL ROWID абсолютно аналогичен типу, используемому для работы с псевдостолбцами ROWID базы данных. Он дает возможность сохранять идентификаторы строк        которые можно рассматривать в качестве ключей, однозначно определяющих каждую строку базы данных. Идентификаторы строк хранятся внутри базы данных в виде двоичных значений фиксированной длины, размер которых зависит от используемой операционной системы. Для работы с идентификаторами их можно преобразовать в последовательности символов при помо-
щи встроенной функции ROWIDTOCHAR. Результатом работы этой функции является последовательность, имеющая в
формат:
BBBBBBBB.RRRR.FFFF
где        определяет блок в файле базы данных, RRRR — строку в
блоке, a FFFF — номер файла. Каждый элемент идентификатора строки
представлен в виге        числа. Например, идентификатор
0000001E.OOFF.0001
указывает на 30-й блок, 255-ую строку в этом блоке, который расположен в файле 1. В базах данных        и выше идентификатор строки rowid
использует расширенный формат, который также является 18-символьной строкой, редставляющей значение в записи base-64. Компоненты расширенного формата rowid можно определить с помощью модуля DBMS_ROWID, описанного в приложении А.
Идентификаторы строк обычно не создаются программами PL/SQL; они выбираются из псевдостолбца ROWID таблицы. Выбранное значе­ние может быть использовано в предложении WHERE последующего опе­ратора UPDATE или DELETE.
UROWID Хотя каждая строка в таблице, доступной в базе данных Orac­le, имеет адрес, это может быть не физический адрес. Например, строки
в индексно-организованных таблицах имеют логический rowid, который основывается на первичном ключе таблицы. Таблицы в базах данных, отличных от Oracle, но доступных через шлюз, также имеют логические
rowid. Тип данных UROWID может содержать как физический rowid (т.е. типа ROWID), так и логический rowid. Oracle рекомендует исполь­зовать UROWID в новых приложениях, так как он является более гибким.
Дополнительную информацию о логических rowid и индексно-организованных таблицах можно найти в "Oracle Concepts".

 









jAntivirus