Link Search Menu Expand Document

DROP MATERIALIZED VIEW

Содержание раздела
  1. Синтаксис
    1. Ключевое слово IF EXISTS
    2. Ключевое слово DATASOURCE_TYPE
    3. Ключевое слово LOGICAL_ONLY
  2. Ограничения
  3. Примеры
    1. Удаление представления с удалением данных из всех СУБД
    2. Удаление представления с проверкой его наличия
    3. Удаление представления с удалением данных из ADG
    4. Удаление представления только на логическом уровне

Запрос позволяет удалить материализованное представление и его данные.

В ответе возвращается:

  • пустой объект ResultSet при успешном выполнении запроса;
  • исключение при неуспешном выполнении запроса.

Если при обработке запроса произошла ошибка, изменение сущностей логической базы данных становится недоступно. В этом случае нужно выполнить запрос ERASE_CHANGE_OPERATION.

Каждое удаление представления записывается в журнал. Журнал можно посмотреть с помощью запроса GET_CHANGES.

Синтаксис

DROP MATERIALIZED VIEW [IF EXISTS] [db_name.]materialized_view_name
[DATASOURCE_TYPE = datasource_alias]
[LOGICAL_ONLY]

Параметры:

db_name

Имя логической базы данных, из которой удаляется материализованное представление. Опционально, если выбрана логическая БД, используемая по умолчанию.

table_name

Имя удаляемого материализованного представления.

datasource_alias

Псевдоним СУБД хранилища, из которой удаляются данные материализованного представления. Возможные значения: adqm, adg. Значение можно указывать без кавычек, в одинарных кавычках (например, 'adg') или двойных кавычках (например, "adg").
Если ключевое слово DATASOURCE_TYPE с псевдонимом не указано, данные удаляются из всех СУБД хранилища.

Ключевое слово IF EXISTS

Ключевое слово IF EXISTS включает проверку наличия материализованного представления до попытки его удаления. Если ключевое слово указано в запросе, система возвращает успешный ответ как по успешно удаленному, так и несуществующему представлению; иначе — только по успешно удаленному представлению.

Ключевое слово DATASOURCE_TYPE

Ключевое слово DATASOURCE_TYPE позволяет указать СУБД хранилища, из которых необходимо удалить данные материализованного представления. В текущей версии данные представления могут размещаться в ADG и (или) ADQM. Само материализованное представление удаляется из логической схемы данных при удалении его данных из последней СУБД хранилища.

Если ключевое слово не указано, данные представления удаляются из всех СУБД хранилища.

Ключевое слово LOGICAL_ONLY

Ключевое слово LOGICAL_ONLY позволяет удалить материализованное представление только на логическом уровне (из логической схемы данных), без удаления связанных физических таблиц и размещенных в них данных из хранилища данных.

Если ключевое слово не указано, удаляется как материализованное представление, так и связанные с ним физические таблицы.

Ограничения

  • Выполнение запроса недоступно при наличии любого из факторов:
    • горячей дельты,
    • незавершенного запроса на создание, удаление или изменение таблицы или представления,
    • запрета на изменение сущностей (см. раздел DENY_CHANGES).
  • Выполнение запроса недоступно в сервисной базе данных INFORMATION_SCHEMA.

Примеры

Удаление представления с удалением данных из всех СУБД

DROP MATERIALIZED VIEW marketing.sales_and_stores

Удаление представления с проверкой его наличия

DROP MATERIALIZED VIEW IF EXISTS marketing.mat_view_with_unknown_existence

Удаление представления с удалением данных из ADG

DROP MATERIALIZED VIEW marketing.sales_and_stores DATASOURCE_TYPE = 'adg'

Удаление представления только на логическом уровне

DROP MATERIALIZED VIEW marketing.stores_by_sold_products_matview LOGICAL_ONLY