Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Виртуальные таблицы

Виртуальные таблицы

Представления часто характеризуют как виртуальные таблицы. Пользователи базы данных могут отбирать в представлении строки и столбцы, объединять их с другими представлениями и таблицами, ограничивать, сортировать и группировать результаты запросов и т. д. На самом деле пользователь чаще всего не знает, откуда извлекает значения: из таблицы или представления. Дело в том, что, в отличие от таблиц, представления не занимают физическое пространство диска. Определения представления хранятся в СУБД в виде скомпилированных запросов, которые динамически наполняют данными виртуальные таблицы, для запросов пользователей.

Детали реализации представления отличаются в разных СУБД. СУБД может за кулисами создавать временную таблицу, наполнять ее реальными данными и использовать ее для возвращения результатов запросов пользователей. Механизм базы данных может также комбинировать запросы пользователей с внутренними определениями представлений (которые также по сути являются запросами) и выполнять результирующий запрос для возврата данных. Как бы там ни было, для конечного пользователя это не имеет ни малейшего значения. Представления используются для разных целей. К примеру, в представлении можно скомбинировать данные из множества таблиц в удобном для пользователя виде. Также с их помощью можно реализовать определенные правила системы безопасности, открывая для пользователя только указанные горизонтальные и вертикальные срезы данных. В этой главе показано, как создавать различные типы представлений. В этом разделе описан синтаксис инструкции CREATE VIEW в различных реализациях СУБД. В большинстве случаев список столбцов не указывают; если он опущен, то имена столбцов представления будут совпадать с именами столбцов в инструкции SELECT. Однако он становится обязательным элементом инструкции создания представления, если выполняется хотя бы одно из следующих условий:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *