Опубликован: 11.12.2006 | Доступ: свободный | Студентов: 5820 / 381 | Оценка: 4.42 / 3.86 | Длительность: 57:15:00
Лекция 18:

Создание и использование представлений

Секционирование

Представления обычно используются для слияния секционированных данных в одну виртуальную таблицу. Секционирование используется для снижения размеров таблиц и индексов. Для секционирования данных вы создаете несколько таблиц, заменяющих одну таблицу, и присваиваете каждой новой таблице какой-либо диапазон значений из исходной таблицы. Например, вместо одной большой таблицы базы данных, в которой хранятся данные торговых транзакций вашей компании, вы можете создать много небольших таблиц, каждая из которых содержит данные за одну неделю, и затем использовать представление для их объединения, чтобы увидеть "историю" транзакций. Несколькими небольшими таблицами и соответствующими индексами управлять проще, чем одной большой таблицей базы данных и ее индексом. Кроме того, вы можете легко удалять устаревшие данные путем удаления одной из базовых таблиц с этими устаревшими данными. Рассмотрим эту тему более подробно.

Представление выглядит для пользователей как одна большая таблица, но она образована многими таблицами, каждая из которых имеет собственный индекс (рис. 18.8). (На самом деле здесь подошел бы кластеризованный индекс по дате.)

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

Чтобы создать представление, в котором объединяются секционированные данные (секционированное представление), вы должны сначала создать секционированные таблицы. Эти таблицы будут, скорее всего, содержать данные по продажам. В каждой таблице будут храниться данные за определенный период – обычно за неделю или месяц. Создав эти таблицы, вы можете использовать оператор UNION ALL, чтобы создать представление, содержащее все данные. Например, предположим, что у вас четыре таблицы с именами table_1, table_2, table_3 и table_4. Следующий оператор создает одну большую виртуальную таблицу, содержащую все данные из этих таблиц:

Использование представлений для слияния секционированных данных

Рис. 18.8. Использование представлений для слияния секционированных данных
CREATE VIEW partview
AS 
  	SELECT * FROM table_1 
  	UNION ALL 
  	SELECT * FROM table_2 
  	UNION ALL 
  	SELECT * FROM table_3 
  	UNION ALL 
  	SELECT * FROM table_4

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

Использование Enterprise MАnager для создания представления

В этом разделе мы будем использовать Enterprise MАnager для создания представления в базе данных Northwind. Следующие шаги позволят вам пройти через этот процесс:

  1. В окне Enterprise MАnager раскройте папку Databases (Базы данных) для сервера, на котором находится база данных Northwind, и щелкните на Northwind. Информация по базе данных появится в правой панели окна (рис. 18.9).
  2. Щелкните правой кнопкой мыши на Northwind в левой панели. Укажите в появившемся контекстном меню команду New (Создать) и затем выберите пункт View (Представление). Появится окно New View (Создание представления) (рис. 18.10). Это окно применяется для определения имени представления, колонок таблиц, используемых в этом представлении, и структуры базовых таблиц.
    Информация по базе данных Northwind

    увеличить изображение
    Рис. 18.9. Информация по базе данных Northwind
    Окно New View (Создание представления)

    увеличить изображение
    Рис. 18.10. Окно New View (Создание представления)

    Окно New View состоит из следующих четырех панелей:

    • Панель схемы (Diagram pАne). Показывает данные таблицы, которые используются для создания представления. В этой панели можно выбирать колонки.
    • Панель-сетка (Grid pАne).Показывает колонки, выбранные из таблицы или базовых таблиц. В этой панели можно выбирать колонки.
    • Панель SQL (SQL pАne).Показывает оператор SQL, используемый для определения данного представления. SQL Server генерирует этот оператор SQL, когда вы перетаскиваете элементы панели схемы и выбираете колонки в панели-сетке.
    • Панель результатов (Results pАne). Показывает строки, считанные из представления. Эта информация позволяет вам понять, как выглядят данные.
    Вы можете задавать визуализацию этих панелей, щелкая на соответствующих кнопках в панели инструментов окна New View. Другие кнопки панели инструментов используются для некоторых важных функций. В следующем списке дается описание этих кнопок, начиная с левого края панели инструментов:
    • Save (Сохранить). Сохраняет данное представление.
    • Properties (Свойства).Позволяет вам изменять свойства данного представления. При щелчке на этой кнопке появляется окно Properties, содержащее опции Distinct Values (Неповторяющиеся значения) и Encrypt View (Шифровать представление).
    • Show/Hide PАnes (Показать/Скрыть панели) – четыре кнопки. Позволяют вам показывать или скрывать четыре панели окна New View.
    • Run (Выполнить). Запускает соответствующий запрос и выводит результаты в панели результатов. Эту проверку можно использовать, чтобы убедиться в правильности работы запроса.
    • CАncel Execution Аnd Clear Results (Прекратить выполнение и удалить результаты). Очищает панель результатов.
    • Verify SQL (Проверить SQL). Проверяет запрос на соответствие базовой таблице для подтверждения правильности оператора SQL.
    • Remove Filter (Удалить фильтр). Удаляет все определенные ранее фильтры.
    • Use GROUP BY (Использовать GROUP BY). Добавляет предложение GROUP BY к оператору в панели SQL.
    • Add Table (Добавить таблицу). Позволяет добавить какую-либо таблицу к запросу.
  3. Модифицируйте оператор SELECT в панели SQL в соответствии с оператором SELECT (рис. 18.11). Представление будет содержать колонки CompАnyName, ContАсtName и Phone. Набрав текст оператора SELECT, щелкните на кнопке Verify SQL, чтобы проверить правильность данного запроса. Если это так, то вы должны щелкнуть на кнопке OK в появившемся диалоговом окне, чтобы Enterprise MАnager заполнил панель схемы и панель-сетку. Ваше окно New View будет выглядеть (рис. 18.11).
  4. Закончив проверку того, что представление отвечает вашим требованиям (с помощью панели результатов), и внеся необходимые изменения, закройте окно New View. Если щелкнуть на кнопке Yes (Да), то вы получите запрос на ввод имени данного представления. Введите описательное имя вашего представления и сохраните представление, щелкнув на кнопке OK.

Ваше представление теперь доступно для использования. Вы можете использовать Enterprise MАnager, чтобы задать свойства нового представления, включая полномочия доступа. Окно View Properties (Свойства представления) описывается в разделе "Изменение и удаление представлений" далее.

Заполненное окно New View (Создание представления)

увеличить изображение
Рис. 18.11. Заполненное окно New View (Создание представления)