В этом учебном материале вы узнаете, как использовать, как создавать, обновлять и удалять Oracle VIEW (представление) с синтаксисом и примерами.
Что такое VIEW в Oracle?
В Oracle VIEW в сущности, представляет собой виртуальную таблицу, которая физически не существует. Скорее всего, она создается с помощью запроса соединяющего одну или несколько таблиц.
CREATE VIEW
Синтаксис
Синтаксис CREATE VIEW в Oracle:
SELECT columns
FROM tables
[WHERE conditions];
Параметры или аргументы
view_name
Наименование Oracle VIEW, которое вы хотите создать.
WHERE conditions
Необязательный. Условия, которые должны быть выполнены для записей, которые будут включены в VIEW.
Пример
1 2 3 4 5 6 |
CREATE VIEW sup_orders AS SELECT suppliers.supplier_id, orders.quantity, orders.price FROM suppliers INNER JOIN orders ON suppliers.supplier_id = orders.supplier_id WHERE suppliers.supplier_name = 'Microsoft'; |
Этот пример Oracle CREATE VIEW создаст виртуальную таблицу на основе результирующего набора SELECT. Теперь вы можете запросить VIEW Oracle следующим образом:
FROM sup_orders;
Update VIEW
С помощью Oracle CREATE OR REPLACE VIEW вы можете изменить определенное в Oracle VIEW не удаляя его.
Синтаксис
SELECT columns
FROM table
WHERE conditions;
view_name
Наименование представления Oracle, которое вы хотите создать или изменить.
Пример
1 2 3 4 5 6 |
CREATE or REPLACE VIEW sup_orders AS SELECT suppliers.supplier_id, orders.quantity, orders.price FROM suppliers INNER JOIN orders ON suppliers.supplier_id = orders.supplier_id WHERE suppliers.supplier_name = 'Apple'; |
Этот пример Oracle CREATE OR REPLACE VIEW обновит определенное в Oracle представление sup_orders без его удаления. Если Oracle VIEW еще не существовало, то представление будет создано впервые.
Drop VIEW
После того, как VIEW было создано, вы можете удалить его с помощью DROP VIEW.
Синтаксис
view_name
Наименование представления Oracle, который вы хотите создать или заменить.
Пример
Ниже приведен пример того, как использовать Oracle DROP VIEW:
1 |
DROP VIEW sup_orders; |
Этот пример Oracle DROP VIEW удалит представление с названием sup_orders.
Часто задаваемые вопросы
Вопрос: Можно ли обновить данные в VIEW?
Ответ: Представление в Oracle создается путем объединения одной или нескольких таблиц. При обновлении записи (ей) в VIEW, обновляются записи в базовых таблицах, которые составляют VIEW.
Так что, да, вы можете обновить данные в Oracle VIEW при наличии у вас соответствующих привилегий в таблицах базы Oracle.
Вопрос: Будет ли существовать Oracle VIEW, если таблица удалится из базы данных?
Ответ: Да в Oracle VIEW продолжает существовать даже после того, как одна из таблиц (на которой основано VIEW) удаляется из базы данных. Тем не менее, если вы попытаетесь запросить VIEW Oracle после того, как таблица была удалена, вы получите сообщение о том, что Oracle VIEW содержит ошибку.
Если восстановить таблицу (таблицу которую удалили), то Oracle VIEW снова будет в порядке.