Россия, г. Санкт-Петербург |
Создание и использование представлений
Изменение и удаление представлений
Удаление и изменение представлений выполняется с помощью Enterprise MАnager или операторов T-SQL. Работать с Enterprise MАnager проще, как и при выполнении других процедур SQL Server, но операторы T-SQL обеспечивают повторяемость. В этом разделе мы рассмотрим оба метода.
Использование Enterprise MАnager для изменения и удаления представлений
Для изменения и удаления представлений с помощью Enterprise MАnager выполните следующие шаги.
- В окне Enterprise MАnager раскройте папку Databases на нужном сервере, раскройте базу данных, содержащую представление, которое хотите удалить или изменить, и затем щелкните на Views (Представления), чтобы в правой панели этого окна появился список представлений (рис. 18.17).
- Щелкните правой кнопкой мыши на имени представления, которое хотите модифицировать или удалить. Появится контекстное меню (рис. 18.18). Чтобы удалить представление, выберите в этом меню пункт Delete (Удалить). Чтобы изменить представление, выберите пункт Design View (Разработка представления).
- Если выбран пункт Delete, то появится диалоговое окно Drop Objects (Удаление объектов) (рис. 18.19). Щелкните на кнопке Show Dependencies (Показать зависимости), чтобы увидеть базовую структуру представления. Здесь вы можете видеть, от каких таблиц зависит представление. Если выбрано представление типа join (связывание) или union (объединение), то вы увидите все участвующие таблицы; если это представление по определенным колонкам или строкам, то вы увидите только одну таблицу. Когда вы будете готовы удалить выбранное представление, щелкните на кнопке Drop All (Удалить все) в диалоговом окне Drop Objects. Если в контекстном меню выбран пункт Design View, то появится окно Design View (рис. 18.20). Отметим его сходство с окном (рис. 18.10). Вы можете использовать окно Design View для модифицирования вашего представления таким же способом, что и при создании представления в окне New View.
- После внесения необходимых изменений в представление закройте окно Design View, щелкнув на кнопке Close (Закрыть) этого окна. Затем вы получите предложение сохранить это представление.
Закончив модифицирование представления, вы можете задать полномочия доступа к этому представлению. Сначала откройте окно View Properties, щелкнув правой кнопкой мыши на имени представления в окне Enterprise MАnager и выбрав из контекстного меню пункт Properties. Затем щелкните на Permissions (Полномочия), чтобы вывести на экран полномочия доступа для данного представления. (О процессе задания полномочий см. "Управление пользователями и системой безопасности" .)
Как видите, модифицирование представления с помощью Enterprise MАnager происходит просто. Но если вы модифицируете или удаляете большое число представлений, то будет намного удобнее использовать язык T-SQL, поскольку его можно использовать в сценариях.
Использование T-SQL для изменения и удаления представлений
Для изменения представлений с помощью T-SQL используйте оператор ALTER VIEW. Оператор ALTER VIEW аналогичен оператору CREATE VIEW и имеет следующий синтаксис:
ALTER VIEW имя_представления [(колонка, колонка, ...)] [WITH ENCRYPTION] AS ваш оператор SELECT [WITH CHECK OPTION]
Единственным отличием между операторами ALTER VIEW и CREATE VIEW является то, что оператор CREATE VIEW не будет выполняться, если представление уже существует, а оператор ALTER VIEW не будет выполняться, если указанное представление не существует. (Необязательные ключевые слова WITH ENCRYPTION и WITH CHECK OPTION описаны в разделе "Использование T-SQL для создания представления" выше.)
Чтобы увидеть, как действует оператор ALTER VIEW, вернемся к нашему примеру секционирования (описанному в разделе "Секционирование"). Чтобы удалить устаревшую секцию данных и добавить новую секцию, мы можем изменить представление следующим образом:
ALTER VIEW partview AS SELECT * FROM table_2 UNION ALL SELECT * FROM table_3 UNION ALL SELECT * FROM table_4 UNION ALL SELECT * FROM table_5
Модифицированное представление будет выглядеть аналогично прежнему виду (до выполнения оператора ALTER VIEW ), но теперь будет выбран другой набор данных. Представление теперь не использует таблицу table_1 и использует таблицу table_5.
Для удаления представления используйте оператор DROP VIEW. Оператор DROP VIEW имеет следующий простой синтаксис:
DROP VIEW имя_представления
Как видите, оба метода – использование Enterprise MАnager и команд T-SQL – удобны для использования. Выберите метод, который наиболее отвечает вашим требованиям.