DeepEdit!

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

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

Манипуляции со сборными конструкциями

С помощью SQL-операторов DML можно выполнять манипуляции над хранимой сборной конструкцией. Операции этого типа воздействуют на сборную конструкцию в целом, а не на отдельные элементы. Для работы с элементами сборной конструкции используется PL/SQL, а также опера­торы SQL (см. ниже в разделе "SQL-операции TABLE").
INSERT

Для ввода сборной конструкции в строку базы данных используется опера­тор INSERT. Сборная конструкция должна быть предварительно создана и инициализирована. Кроме того, она может быть переменной PL/SQL. В следующем примере строки вводятся в таблицу class_material (см. рис. 8.1):
DELETE
С помощью оператора DELETE можно удалить строку, содержащую сбор­ную конструкцию, как показано в следующем примере:
SELECT
Сборные конструкции, как и любой другой тип базы данных, считывают-ся в переменные PL/SQL оператором SELECT, после чего с ними можно работать с помощью процедурных операторов.
Запросы к изменяемым массивам На примере процедуры PrintRecuired,
которая распечатывает книги, обязательные для данной группы, показано,
как SELECT помещает хранимый изменяемый массив в переменную
PL/SQL, где с ним можно работать дальше:
Пусть содержимое таблицы class_ma(erial соответствует рис. 8.1. Если мы вызовем PrintRequired, то получим следующий результат:
Запросы к вложенным таблицам Когда вложенная таблица считывает-ся в переменную PL/SQL, ей присваиваются ключи со значениями от 1 и до числа, равного количеству элементов таблицы. Значение этого числа можно узнать с помощью метода COUNT. Приведем пример процедуры Library. PrintCheckedOut, распечатывающей имена тех студентов, которые заказали конкретную книгу:

Ниже показаны выходные данные Library. PrintCheckedOut, предпола­гается, что library_catalog имеет вид, представленный на рис. 8.2:


 









jAntivirus