Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Существует две основных формы вставки объектов:
1) Определяют и вставляют все атрибуты, которые есть у объекта persons.
BEGIN
INSERT INTO persons values ('Jenifer', 'Lapidus',…);
2) С использованием конструктора
INSERT INTO persons values (Person ('Jenifer', 'Lapidus',…));
Модификация оператора INSERT.
В операторе INSERT появилась возможность возвращать в локальную переменную ссылку на объект в таблице, т.е. после вставки объекта можно какой-то локальной переменной присвоить ссылку на объект.
Пример
DECLARE
p1_ref REF person,
p2_ref REF person,
…
BEGIN
INSERT INTO persons p VALUES (Person ('Paul','Chang', …))
RETURNING ref(p) INTO p1_ref;
INSERT INTO persons2
SELECT VALUES (p) FROM persons p
WHERE p.last_name LIKE '%Jones'; - в таблицу persons2 копируются все записи таблицы persons, у которых атрибут last_name подобен Jones.
Еще одна особенность вставок:
CREATE TABLE department (
Dept_name varchar2(20),
Manager person,
Location varchar2(20));
/
Запись в такую таблицу вставляется следующим образом:
INSERT INTO department
VALUES (‘payroll’,person (‘Alan’,’Tsai’,…),’Los Angeles’);
В отличие от предыдущей ситуации, где можно вернуть указатель на объект, здесь этого сделать нельзя, т.к. можно вернуть только указатель на всю строку ROWID, а не указатель на поле.
Дата публикования: 2015-02-18; Прочитано: 167 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!