Лекции по предмету омбт (Oracle 9i маълумотлар базаси технологияси) Лекция Введение в Oracle 9i. План


Создание представления(CREATE VIEW)



Download 3,91 Mb.
bet39/101
Sana25.02.2022
Hajmi3,91 Mb.
#291602
TuriЛекции
1   ...   35   36   37   38   39   40   41   42   ...   101
Bog'liq
Лекция Oracle

Создание представления(CREATE VIEW)
В команду CREATE VIEW включается подзапрос
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW представление
[(псевдоним[, псевдоним]...)]
AS подзапрос
[WITH CHECK OPTION [CONSTRAINT ограничение]]
[WITH READ ONLY [CONSTRAINT ограничение]];
Подзапрос может содержать сложную команду SELECT

Создание представления: пример



  • Создание представления EMPVU80 с информацией о служащих отдела 80

  • CREATE VIEW empvu80

  • AS SELECT employee_id, last_name, salary

  • FROM employees

  • WHERE department_id = 80;

  • View created.

  • Вывод структуры представления с помощью команды DESCRIBE iSQL*Plus

  • DESCRIBE empvu80

Создание представления: пример

  • Создайте представление с псевдонимами столбцов в подзапросе

  • CREATE VIEW salvu50

  • AS SELECT employee_id ID_NUMBER, last_name NAME,

  • salary*12 ANN_SALARY

  • FROM employees

  • WHERE department_id = 50;

  • View created.

  • Производите выборку столбцов из представления по этим псевдонимам

Выборка данных из представления: пример
S ELECT *
FROM salvu50;
Изменение представления
пример

  • Изменение представления EMPVU80 с помощью предложения CREATE OR REPLACE VIEW. Добавление псевдонима для каждого столбца.

  • CREATE OR REPLACE VIEW empvu80

  • (id_number, name, sal, department_id)

  • AS SELECT employee_id, first_name || ' ' || last_name,

  • salary, department_id

  • FROM employees

  • WHERE department_id = 80;

  • View created.

  • Порядок псевдонимов в предложении CREATE VIEW должен быть таким же, как порядок столбцов в подзапросе.

Создание сложного представления: пример
Создание сложного представления с групповыми функциями для вывода данных из двух таблиц
CREATE VIEW dept_sum_vu
(name, minsal, maxsal, avgsal)
AS SELECT d.department_name, MIN(e.salary),
MAX(e.salary),AVG(e.salary)
FROM employees e, departments d
WHERE e.department_id = d.department_id
GROUP BY d.department_name;
View created.
Правила выполнения DML операций
с представлением

  • Операции DML можно выполнять с простыми представлениями.

  • Нельзя удалить строку, если представление содержит:

    • Групповые функции

    • Предложение GROUP BY

    • Ключевое слово DISTINCT

    • Ссылку на псевдостолбец ROWNUM .

Правила выполнения DML операций с представлением
Невозможно изменить данные в представлении,
которое содержит:

  • Групповые функции

  • Предложение GROUP BY

  • Ключевое слово DISTINCT

  • Ссылку на псевдостолбец ROWNUM

  • Столбцы, определенные с помощью выражений.

Правила выполнения DML операций с представлением
Невозможно добавить данные в представление,
которое содержит:

  • Групповые функции

  • Предложение GROUP BY

  • Ключевое слово DISTINCT

  • Ссылку на псевдостолбец ROWNUM

  • Столбцы, определенные с помощью выражений

Невозможно добавить данные в представление,
которое не содержит определенные в базовых
таблицах столбцы с ограничением NOT NULL .
Использование предложения WITH CHECK OPTION

  • Необходимо следить за тем, чтобы результаты DML операций оставались в пределах домена представления.

  • CREATE OR REPLACE VIEW empvu20

  • AS SELECT *

  • FROM employees

  • WHERE department_id = 20

  • WITH CHECK OPTION CONSTRAINT empvu20_ck ;

  • View created.

  • Попытка изменить номер отдела для какой-либо строки в представлении закончится неудачей, т.к. при этом нарушится ограничение WITH CHECK OPTION.

Запрет DML операций

  • Использование опции WITH READ ONLY запрещает выполнять над представлением любые DML операции.

  • Попытка выполнить команду DML для любой строки представления вызовет ошибку сервера Oracle.

Запрет DML операций


CREATE OR REPLACE VIEW empvu10
(employee_number, employee_name, job_title)
AS SELECT employee_id, last_name, job_id
FROM employees
WHERE department_id = 10
WITH READ ONLY;
View created.
Удаление представления
Удаление представления не вызывает потери данных, т.к. представление основано на реальных таблицах базы данных.
DROP VIEW представление;
DROP VIEW empvu80;
View dropped.

Download 3,91 Mb.

Do'stlaringiz bilan baham:
1   ...   35   36   37   38   39   40   41   42   ...   101




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish