DeepEdit!

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

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

Использование VARRAY

Теперь рассмотрим использование массива VARRAY в качестве столбца реляционной таблицы. Сначала объявим два разных типа VARRAY на уровне схемы данных. Затем создадим реляционную таблицу family, в которой будет два столбца типа VARRAY. Наконец, в PL/SQL-программе заполним элементами две локальных коллекции и используем их в операторе INSERT для таблицы family. Более подробное описание будет приведено следом за фрагментом кода.



Строки
Описание
Раздел A
Используем операторы CREATE TYPE для объявления двух разных ти­пов VARRAY. Обратите внимание, что для типа VARRAY необходимо указывать максимальную длину коллекции. То есть, по сути, мое объявление в некоторой форме диктует определенную социальную политику: у человека должно быть не больше двух родителей и не больше одного ребенка.
Раздел B
Создаем реляционную таблицу с тремя столбцами: столбец VARCHAR2 для фамилии семьи и два столбца VARRAY: один для родителей, вто­рой для детей.

Раздел C,
Объявляем две локальных переменных на основе типа VARRAY уров­ня схемы. Как и в случае с вложенными таблицами (и в отличие от ассоциативных массивов), необходимо использовать для инициа­лизации структуры функцию-конструктор, имя которой совпадает
с именем типа.
строки
2-3


5-10
Расширяем коллекции и наполняем их именами родителей и един­ственного ребенка. Если попытаться выполнить расширение до двух строк, то Oracle инициирует исключение: «ORA-06532: Sub­
script outside of limit error».



13-17
Вставляем строку в таблицу family, просто указывая названия кол­
лекций типа VARRAY в списке значений для таблицы. Несомненно, Oracle значительно облегчает для нас процедуру вставки коллекций в реляционные таблицы!



 









jAntivirus