Вы научитесь:
создавать представления с помощью мастера Create View Wizard;
создавать представления с помощью конструктора представлений View Designer;
добавлять представление в запрос;
переименовывать представление;
модифицировать представление;
удалять представление.
Понятие о представлениях
Хотя конструктор запросов Query Designer облегчает обращение к таблицам в вашей базе данных, постоянная корректировка или создание оператора запроса каждый раз заново может оказаться слишком утомительным и трудоемким. SQL Server предоставляет средства для хранения оператора SELECT в виде представления. В большинстве случаев данные, отображаемые представлением, не являются данными, хранящимися в базе данных, – в представлении хранится только оператор SELECT.
Вы можете считать представление виртуальной таблицей. Она может использоваться точно так же, как обычная таблица. Возможность использования результатов выполнения одного оператора SELECT в качестве входной информации для другого оператора SELECT является одним из фундаментальных требований реляционной модели. Это требование основано на принципе замкнутости.
Индексированные представления
Новое в SQL Server 2000 – это его способность создавать индекс для представления. Если вы индексируете вид, результирующее множество представления хранится в базе данных и модифицируется при любой модификации базовых таблиц и представлений. При определенных обстоятельствах это может существенно улучшить производительность, поскольку нет необходимости пересчитывать результирующее множество при каждой ссылке на него.
Индексированные представления работают лучше, если базовые данные меняются не слишком часто; в противном случае затраты на сопровождение индексированного представления будут выше, чем если бы вы пересчитывали представление по мере необходимости. Индексированные представления лучше всего использовать для следующих двух типов запросов:
запросы связывания и агрегирования, которые обрабатывают большое количество строк;
операции связывания и агрегирования, которые часто выполняются в других запросах.
Создание представлений
Enterprise Manager предусматривает два метода для создания нового представления: мастер создания представления Create View Wizard, который проводит вас по всем этапам процедуры создания представления; и команда New View (Создать представление), которая открывает конструктор представлений View Designer. Конструктор представлений аналогичен конструктору запросов, за исключением того, что он дает возможность сохранять созданный вами оператор SELECT. Мастер создания представлений Create View Wizard является полезным инструментом, но иногда проще создать представление с помощью конструктора представлений View Designer.
Создайте представление с использованием мастера Create View Wizard
Нажмите кнопку Wizard (Мастер)
в панели инструментов Enterprise Manager. Enterprise Manager отобразит диалоговое окно Select Wizard (Выбор мастера).
Раскройте раздел Database, выберите Create View Wizard и нажмите ОК. Enterprise Manager отобразит первую страницу мастера создания представлений Create View Wizard.
Нажмите Next (Далее). Мастер создания представлений Create View Wizard отобразит страницу, запрашивающую имя базы данных, к которой будет относиться представление. Выберите базу данных Aromatherapy.
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, предлагающую вам выбрать объекты для включения в представление.
Выберите Cautions, OilCautions и Oils.
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, предлагающую вам выбрать столбцы для включения в представление.
Выберите Cautions.Caution, Cautions.Description и Oils.OilName.
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, запрашивающую использование необязательной фразы
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, запрашивающую имя нового представления.
Введите
Нажмите кнопку Next (Далее). Мастер создания представлений отобразит операторы SQL, лежащие в основе нового представления.
Нажмите Finish (Готово). Мастер создания представлений Create View Wizard отобразит сообщение, подтверждающее создание представления.
Использование представлений
Создав представление, вы можете использовать его точно так же, как таблицу. Вы можете открыть его в Enterprise Manager с использованием конструктора представлений View Designer, либо включить его в другие запросы.
Если вы открываете конструктор представлений View Designer для существующего представления, Enterprise Manager трактует его как виртуальную таблицу. Базовым оператором SQL является либо SELECT * FROM <имя представления>, либо SELECT TOP n FROM <имя представления>, но не оператор запроса, создавший представление.
Откройте конструктор View Designer для представления
Перейдите к папке Views базы данных Aromatherapy в дереве консоли Console Tree. Enterprise Manager отобразит список представлений для базы данных.
Щелкните правой кнопкой мыши на OilPropertiesExtended в рабочей панели Details Pane, укажите на Open View (Открытие представления) и выберите Return All Rows (Показать все строки). Enterprise Manager откроет конструктор представлений View Designer для данного представления.
Щелкните на кнопке SQL Pane (Панель SQL)
в панели инструментов конструктора представлений. Конструктор представлений View Designer отобразит панель SQL Pane, содержащую оператор SELECT для представления.
Закройте конструктор представлений View Designer.
Включите представление в запрос
Перейдите к папке Tables базы данных Aromatherapy в дереве консоли Console Tree. Enterprise Manager отобразит список таблиц в рабочей панели Details Pane.
Откройте конструктор запросов Query Designer для таблицы Oils, щелкнув правой кнопкой мыши на имени таблицы, указав на Open Table (Открытие таблицы) и выбрав Return All Rows (Показать все строки). Конструктор запросов Query Designer откроет таблицу Oils.
Щелкните на кнопке Diagram Pane (Панель диаграмм)
в панели инструментов, чтобы отобразить панель диаграмм.
Щелкните на кнопке Add Table (Добавить таблицу).
Конструктор запросов Query Designer отобразит диалоговое окно Add Table (Добавление таблицы).
Откройте вкладку Views (Представления) в диалоговом окне Add Table (Добавление таблицы).
Выделите OilPropertiesExtended в списке представлений, нажмите кнопку Add (Добавить), чтобы добавить представление в запрос, а затем нажмите кнопку Close (Закрыть), чтобы закрыть диалоговое окно. Конструктор запросов Query Designer добавит представление в запрос.
Щелкните на кнопке SQL Pane (Панель SQL).
Конструктор запросов Query Designer отобразит оператор
В панели SQL Pane замените * на Oils.OilName, OilPropertiesExtended.Property.
Щелкните на кнопке SQL Pane (Панель SQL)
, чтобы скрыть панель SQL Pane.
Нажмите кнопку Run (Выполнить)
в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит столбцы OilName Property.
Закройте конструктор запросов Query Designer.
Управление представлениями
Как и для других объектов базы данных, вполне вероятно, что у вас может возникнуть необходимость изменить представление. Это легко можно сделать средствами Enterprise Manager.
Изменение представлений
Представление может быть изменено двумя способами: вы можете изменить его имя, либо вы можете изменить базовый оператор SQL для представления.
Переименуйте представление
Перейдите к папке Views базы данных Aromatherapy в дереве консоли Console Tree. Enterprise Manager отобразит список представлений для базы данных.
Щелкните правой кнопкой мыши на представлении OilPropertiesExtended в рабочей панели Details Pane и выберите Rename (Переименовать). Enterprise Manager выделит имя представления.
Измените имя представления на OilPropExt и нажмите клавишу Enter. Enterprise Manager отобразит диалоговое окно, предупреждающее, что изменение имени представления сделает использование любых других объектов, которые на него ссылаются, некорректным.
Нажмите Yes (Да). Enterprise Manager подтвердит изменение имени представления.
Модифицируйте представление
Щелкните правой кнопкой мыши на OilCautionsExtended в рабочей панели Details Pane и выберите Design View (Конструирование представления). Enterprise Manager откроет конструктор View Designer для представления.
Скройте панель SQL Pane, щелкнув на кнопке SQL Pane (Панель SQL)
, и скройте панель результатов Results Pane, щелкнув на кнопке Results Pane (Панель результатов).
Добавьте столбец OilID в таблицу Oils представления.
Нажмите кнопку Save (Сохранить)
в панели инструментов конструктора представлений. Конструктор представлений View Designer сохранит новое определение представления.
Закройте конструктор представлений View Designer.
Вы научитесь:
создавать представления с помощью мастера Create View Wizard;
создавать представления с помощью конструктора представлений View Designer;
добавлять представление в запрос;
переименовывать представление;
модифицировать представление;
удалять представление.
Понятие о представлениях
Хотя конструктор запросов Query Designer облегчает обращение к таблицам в вашей базе данных, постоянная корректировка или создание оператора запроса каждый раз заново может оказаться слишком утомительным и трудоемким. SQL Server предоставляет средства для хранения оператора SELECT в виде представления. В большинстве случаев данные, отображаемые представлением, не являются данными, хранящимися в базе данных, – в представлении хранится только оператор SELECT.
Вы можете считать представление виртуальной таблицей. Она может использоваться точно так же, как обычная таблица. Возможность использования результатов выполнения одного оператора SELECT в качестве входной информации для другого оператора SELECT является одним из фундаментальных требований реляционной модели. Это требование основано на принципе замкнутости.
Индексированные представления
Новое в SQL Server 2000 – это его способность создавать индекс для представления. Если вы индексируете вид, результирующее множество представления хранится в базе данных и модифицируется при любой модификации базовых таблиц и представлений. При определенных обстоятельствах это может существенно улучшить производительность, поскольку нет необходимости пересчитывать результирующее множество при каждой ссылке на него.
Индексированные представления работают лучше, если базовые данные меняются не слишком часто; в противном случае затраты на сопровождение индексированного представления будут выше, чем если бы вы пересчитывали представление по мере необходимости. Индексированные представления лучше всего использовать для следующих двух типов запросов:
запросы связывания и агрегирования, которые обрабатывают большое количество строк;
операции связывания и агрегирования, которые часто выполняются в других запросах.
Создание представлений
Enterprise Manager предусматривает два метода для создания нового представления: мастер создания представления Create View Wizard, который проводит вас по всем этапам процедуры создания представления; и команда New View (Создать представление), которая открывает конструктор представлений View Designer. Конструктор представлений аналогичен конструктору запросов, за исключением того, что он дает возможность сохранять созданный вами оператор SELECT. Мастер создания представлений Create View Wizard является полезным инструментом, но иногда проще создать представление с помощью конструктора представлений View Designer.
Создайте представление с использованием мастера Create View Wizard
Нажмите кнопку Wizard (Мастер)
в панели инструментов Enterprise Manager. Enterprise Manager отобразит диалоговое окно Select Wizard (Выбор мастера).
Раскройте раздел Database, выберите Create View Wizard и нажмите ОК. Enterprise Manager отобразит первую страницу мастера создания представлений Create View Wizard.
Нажмите Next (Далее). Мастер создания представлений Create View Wizard отобразит страницу, запрашивающую имя базы данных, к которой будет относиться представление. Выберите базу данных Aromatherapy.
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, предлагающую вам выбрать объекты для включения в представление.
Выберите Cautions, OilCautions и Oils.
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, предлагающую вам выбрать столбцы для включения в представление.
Выберите Cautions.Caution, Cautions.Description и Oils.OilName.
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, запрашивающую использование необязательной фразы
Нажмите Next (Далее). Мастер создания представлений отобразит страницу, запрашивающую имя нового представления.
Введите
Нажмите кнопку Next (Далее). Мастер создания представлений отобразит операторы SQL, лежащие в основе нового представления.
Нажмите Finish (Готово). Мастер создания представлений Create View Wizard отобразит сообщение, подтверждающее создание представления.
Создайте представление с использованием конструктора View Designer
В дереве консоли Console Tree Enterprise Manager перейдите к папке Views базы данных Aromatherapy. Enterprise Manager отобразит список имеющихся представлений.
Нажмите New (Создать)
в панели инструментов Enterprise Manager. Enterprise Manager откроет конструктор представлений View Designer с отображением всех четырех панелей.
Щелкните на кнопке Add Table (Добавить таблицу)
в панели инструментов конструктора представлений. Конструктор представлений View Designer отобразит диалоговое окно Add Table (Добавление таблицы).
На вкладке Tables (Таблицы) добавьте в запрос Properties, OilProperties и Oils, а затем нажмите Close (Закрыть), чтобы закрыть диалоговое окно.
В панели сетки Grid Pane выберите столбцы Oils.OilID, Oils.OilName и Properties.Property для отображения их в результате.
Нажмите кнопку Save (Сохранить).
Конструктор запросов Query Designer отобразит диалоговое окно Save As (Сохранить как).
Введите
Нажмите ОК. Конструктор представлений View Designer создаст новое представление.
Закройте конструктор представлений View Designer.
Использование представлений
Создав представление, вы можете использовать его точно так же, как таблицу. Вы можете открыть его в Enterprise Manager с использованием конструктора представлений View Designer, либо включить его в другие запросы.
Если вы открываете конструктор представлений View Designer для существующего представления, Enterprise Manager трактует его как виртуальную таблицу. Базовым оператором SQL является либо SELECT * FROM <имя представления>, либо SELECT TOP n FROM <имя представления>, но не оператор запроса, создавший представление.
Откройте конструктор View Designer для представления
Перейдите к папке Views базы данных Aromatherapy в дереве консоли Console Tree. Enterprise Manager отобразит список представлений для базы данных.
Щелкните правой кнопкой мыши на OilPropertiesExtended в рабочей панели Details Pane, укажите на Open View (Открытие представления) и выберите Return All Rows (Показать все строки). Enterprise Manager откроет конструктор представлений View Designer для данного представления.
Щелкните на кнопке SQL Pane (Панель SQL)
в панели инструментов конструктора представлений. Конструктор представлений View Designer отобразит панель SQL Pane, содержащую оператор SELECT для представления.
Закройте конструктор представлений View Designer.
Включите представление в запрос
Перейдите к папке Tables базы данных Aromatherapy в дереве консоли Console Tree. Enterprise Manager отобразит список таблиц в рабочей панели Details Pane.
Откройте конструктор запросов Query Designer для таблицы Oils, щелкнув правой кнопкой мыши на имени таблицы, указав на Open Table (Открытие таблицы) и выбрав Return All Rows (Показать все строки). Конструктор запросов Query Designer откроет таблицу Oils.
Щелкните на кнопке Diagram Pane (Панель диаграмм)
в панели инструментов, чтобы отобразить панель диаграмм.
Щелкните на кнопке Add Table (Добавить таблицу).
Конструктор запросов Query Designer отобразит диалоговое окно Add Table (Добавление таблицы).
Откройте вкладку Views (Представления) в диалоговом окне Add Table (Добавление таблицы).
Выделите OilPropertiesExtended в списке представлений, нажмите кнопку Add (Добавить), чтобы добавить представление в запрос, а затем нажмите кнопку Close (Закрыть), чтобы закрыть диалоговое окно. Конструктор запросов Query Designer добавит представление в запрос.
Щелкните на кнопке SQL Pane (Панель SQL).
Конструктор запросов Query Designer отобразит оператор
В панели SQL Pane замените * на Oils.OilName, OilPropertiesExtended.Property.
Щелкните на кнопке SQL Pane (Панель SQL)
, чтобы скрыть панель SQL Pane.
Нажмите кнопку Run (Выполнить)
в панели инструментов конструктора запросов, чтобы исполнить запрос. Конструктор запросов Query Designer отобразит столбцы OilName Property.
Закройте конструктор запросов Query Designer.
Управление представлениями
Как и для других объектов базы данных, вполне вероятно, что у вас может возникнуть необходимость изменить представление. Это легко можно сделать средствами Enterprise Manager.
Изменение представлений
Представление может быть изменено двумя способами: вы можете изменить его имя, либо вы можете изменить базовый оператор SQL для представления.
Переименуйте представление
Перейдите к папке Views базы данных Aromatherapy в дереве консоли Console Tree. Enterprise Manager отобразит список представлений для базы данных.
Щелкните правой кнопкой мыши на представлении OilPropertiesExtended в рабочей панели Details Pane и выберите Rename (Переименовать). Enterprise Manager выделит имя представления.
Измените имя представления на OilPropExt и нажмите клавишу Enter. Enterprise Manager отобразит диалоговое окно, предупреждающее, что изменение имени представления сделает использование любых других объектов, которые на него ссылаются, некорректным.
Нажмите Yes (Да). Enterprise Manager подтвердит изменение имени представления.
Модифицируйте представление
Щелкните правой кнопкой мыши на OilCautionsExtended в рабочей панели Details Pane и выберите Design View (Конструирование представления). Enterprise Manager откроет конструктор View Designer для представления.
Скройте панель SQL Pane, щелкнув на кнопке SQL Pane (Панель SQL)
, и скройте панель результатов Results Pane, щелкнув на кнопке Results Pane (Панель результатов).
Добавьте столбец OilID в таблицу Oils представления.
Нажмите кнопку Save (Сохранить)
в панели инструментов конструктора представлений. Конструктор представлений View Designer сохранит новое определение представления.
Закройте конструктор представлений View Designer.
Удаление представлений
Вы можете удалить представление из базы данных точно так же, как вы удаляете любой другой объект.
Удалите представление
Щелкните правой кнопкой мыши на OilPropExt в рабочей панели Details Pane и выберите Delete (Удалить). Enterprise Manager отобразит диалоговое окно, предлагающее вам подтвердить удаление.
Нажмите кнопку Drop All (Убрать все). Enterprise Manager удалит представление из базы данных.
Краткое содержание
| Чтобы ... | Сделайте следующее | Кнопка |
| Создать представление с использованием мастера Create View Wizard |
Запустите мастер создания представлений Create View Wizard, щелкнув на кнопке Wizard (Мастер) и выбрав Create View Wizard в диалоговом окне Select Wizard (Выбор мастера). Далее следуйте указаниям мастера. |
 |
| Создать представление с использованием конструктора View Designer |
Перейдите к папке Views, щелкните на кнопке New (Создать) в панели инструментов Enterprise Manager, чтобы открыть конструктор представлений View Designer и создать представление. |
 |
| Добавить представление в запрос |
В конструкторе запросов Query Designer нажмите кнопку Add Table (Добавить таблицу). Откройте вкладку Views (Представления), выберите нужное представление, нажмите Add (Добавить), а затем нажмите кнопку Close (Закрыть). |
 |
| Переименовать представление |
Щелкните правой кнопкой мыши на представлении в рабочей панели Details Pane и выберите Rename (Переименовать). Введите новое имя и нажмите клавишу Enter. |
|
| Модифицировать представление |
Щелкните правой кнопкой мыши на представлении в рабочей панели Details Pane, выберите Design View (Конструирование представления) и внесите в представление необходимые изменения. |
|
| Удалить представление |
Щелкните правой кнопкой мыши на представлении в рабочей панели Details Pane и выберите Delete (Удалить). Подтвердите удаление в диалоговом окне Drop Objects (Удаление объектов). |
|