Изменяемые массивы и вложенные таблицы во многом похожи:
• Оба типа (плюс индексные таблицы) обеспечивают доступ к отдельным элементам в PL/SQL при помощи индексов.
• Оба типа можно хранить в таблицах базы данных (при объявлении вне блока PL/SQL).
• К обоим типам применимы методы сборных конструкций. Однако имеются и некоторые отличия:
Для изменяемых массивов задается максимальный размер, а для вложенных таблиц максимальный размер явно не задается.
При хранении в базе данных изменяемые массивы сохраняют установленный порядок значений и значения индексов своих элементов, а вложенные таблицы не сохраняют.
Сравнение вложенных и индексных таблиц
Вложенные таблицы во многом похожи на индексные таблицы:
Структура этих табличных типов данных одинакова.
Обращение к элементам таблиц обоих типов осуществляется при помощи индексов.
• В состав методов, применяемых для вложенных таблиц, входят все
атрибуты индексных таблиц.
Однако существует и ряд серьезных различий:
Можно работать с вложенными таблицами при помощи SQL и сохранять их в базе данных, в то время как с индексными таблицами этого делать нельзя.
Диапазон возможных значений для индексов вложенных таблиц 1...2147483647, а для индексных таблиц -2147483647... 2147483647, т.е. для индексных таблиц можно использовать отрицательные индексы, а для вложенных — нельзя.
Вложенные таблицы могут быть атомарным NULL (это проверяется при помощи операции IS NULL).
Для добавления элементов вложенные таблицы необходимо инициализировать и/или расширить.
Для вложенных таблиц существует ряд дополнительных методов, например EXTEND и TRIM (см. ниже).
• В PL/SQL базовый массив автоматически преобразуется в индексную таблицу (и наоборот), но не может быть преобразован во вложенную таблицу (и наоборот).
Сборные конструкции в базе данных
В рассмотренных выше примерах сборные конструкции обрабатывались в блоках PL/SQL. Однако вложенные таблицы и изменяемые массивы (но не индексные таблицы) можно хранить еще и в таблицах базы данных. В последующих разделах говорится о доступе к хранимым сборным конструкциям и о манипулировании ими.
Особенности хранимых сборных конструкций
Хранимые сборные конструкции базы данных различаются по способу
объявления табличных типов и по синтаксису создания таблиц со столбцами, имеющими тип сборной конструкции.
< Предыдущая | Следующая > |
---|