ГЛАВА 24. Просмотры.

ГЛАВА 24. Просмотры.

В терминологии SQL-89 и SQL-92 просмотр является стандартным типом таблицы, он также называется просматриваемой или виртуальной таблицей. Он характеризуется как виртуальный, потому что вместо того, чтобы хранить табличный объект и выделять страницы для хранения данных, сервер Firebird сохраняет только описание метаданных объекта. Оно содержит уникальный идентификатор, список спецификаций столбцов и компилированный оператор SELECT для поиска описанных в этих столбцах данных во время выполнения.

Что такое просмотр?

По своей природе просмотр является спецификацией таблицы, которая не хранит данные. Он действует как фильтр для столбцов и строк таблиц, на которые ссылается просмотр, - "окно", через которое просматриваются фактические данные. Запрос, определяющий просмотр, может обращаться к одной или более таблицам или к другим просмотрам базы данных. Во многих случаях он ведет себя как постоянная таблица и инкапсулирует некоторые специальные расширения для связи с лежащими в его основе таблицами.

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

Многие запросы могут быть "изменяемыми", позволяя изменять состояние лежащих в их основе постоянных таблиц, или они могут быть сделаны изменяемыми через триггеры. Когда подтверждаются изменения данных в таблицах, содержимое данных просмотра изменяется вместе с ними. При подтверждении изменения данных просмотра данные лежащих в его основе таблиц изменяются соответствующим образом.

Ключи и индексы

Просмотры не могут иметь ключей или индексов. Лежащие в их основе таблицы, называемые базовыми таблицами, будут использованы как источник индексов при конструировании оптимизатором планов запроса. Тема плана запроса для запросов, включающих просмотры, весьма запутана. Она обсуждается позже в этой главе в разд. "Использование планов запроса для просмотров".

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Отчет Просмотры/Заказы

Из книги автора

Отчет Просмотры/Заказы Вы можете измерить эффективность продаж, отслеживая показатели отказов и показатели Просмотры/Заказы для определенного товара или группы товаров. Этот анализ позволяет узнать, как хорошо страницы с описанием товаров и страницы категорий


Почему просмотры могут быть полезными

Из книги автора

Почему просмотры могут быть полезными Требования к данным индивидуального пользователя или группы пользователей могут быть довольно постоянными. Просмотры предоставляют средства для создания пользовательских версий таблиц, содержащих группы данных, подходящих для


Просмотры только для чтения и изменяемые

Из книги автора

Просмотры только для чтения и изменяемые Когда над просмотром выполняется операция DML, изменения могут быть переданы базовым таблицам, на основе которых был создан просмотр, только в случае выполнения некоторых условий. Если просмотр соответствует этим условиям, он


Просмотры только для чтения

Из книги автора

Просмотры только для чтения Просмотр будет просмотром только для чтения, если его оператор SELECT имеет любую из следующих характеристик:* указывает квантификатор строк, отличный от ALL (т. е. DISTINCT, FIRST, SKIP);* содержит поля, определенные через подзапросы или другие выражения;*


Приложение 9. Системные таблицы и просмотры

Из книги автора

Приложение 9. Системные таблицы и просмотры Когда вы создаете базу данных, Firebird начинает с создания своих собственных таблиц, в которых он сохраняет метаданные всех объектов базы данных - не только определенных вами объектов, но также и своих собственных внутренних


Системные просмотры

Из книги автора

Системные просмотры Следующие системные просмотры являются подмножеством просмотров, определенных в стандарте SQL-92. Они предоставляют полезную информацию о ваших данных. Вы можете скопировать эти тексты в скрипты и инсталлировать просмотры во всех ваших базах