CREATE SYNONYM PRODUCTSJTBL FOR USER1.PRODUCTS_TBL;
Синоним создан.
Удаление синонимо в
Удаление синонимов подобно удалению любого другого объекта базы данных. Общий синтаксис оператора для удаления синонима следующий.
DROP [PUBLIC|PRIVATE] SYNONYM ИМЯ_СИНОНИМА
Вот пример:
DROP SYNONYM CUST
Синоним удален.
Резюм е
В ходе этого урока обсуждались представления и синонимы. Часто использованием этих возможностей пренебрегают, хотя во многих случаях они могут существенно ускорить работу пользователя с базой данных. Представления определяются как виртуальные таблицы, т. е. объекты, выглядящие и ведущие себя как таблицы, но не требующие места для хранения данных. Представления обычно определяются как запросы к таблицам или другим представлениям базы данных. Представления используют для ограничения пользователя в доступе к данным или для отображения данных в требуемом виде (например, для подведения итогов по извлекаемым данным). Представления можно создавать на основе других представлений, но при этом не следует создавать слишком много уровней зависимости, поскольку при этом возрастает риск потери контроля. При создании представлений соответствующий оператор допускает ряд опций, которые могут зависеть от реализации языка.
В этой главе обсуждались также синонимы - объекты базы данных, представляющие другие объекты. Синонимы используются для упрощения имен других объектов базы данных, например, при создании более короткого синонима имени для объекта с длинным именем или при создании синонима для объекта, к которому необходим доступ, но владельцем которого является другой пользователь. Синонимы бывают двух типов - PUBLIC и PRIVATE. Синоним с атрибутом PUBLIC доступен всем пользователям базы данных, а синоним с атрибутом PRIVATE - отдельному пользователю. Синонимы с атрибутом PUBLIC обычно создаются администратором базы данных, а обычные пользователи обычно создают синонимы с атрибутом PRIVATE для своих собственных нужд.
Вопросы и ответы
Как это представление может содержать данные и не требовать места для их хранения?
Представление на самом деле не содержит данных Представление представляет собой виртуальную таблицу или сохраненный запрос. Поэтому представление требует только место для хранения создающего представление оператора запроса, обычно называемого определением представления.
Что случится, если таблица, на основе которой строится представление, будет удалена?
Представление окажется несостоятельным, поскольку данные для отбора перестанут существовать.
Существуют ли какие-либо ограничения на имена синонимов при их создании?
Это зависит от реализации языка. В большинстве реализаций имена синонимов должны удовлетворять тем же ограничениям, что и имена таблиц и других объектов базы данных.
Практикум
Задания практических занятий разделены на тесты и упражнения. Тесты предназначены для проверки общего уровня понимания рассмотренного материала. Упражнения дают возможность применить на практике идеи, обсуждавшиеся в ходе текущего урока, в комбинации с идеями из предыдущих уроков. Мы рекомендуем ответить на тестовые вопросы и выполнить упражнения прежде, чем продолжать дальнейшее чтение книги. Ответы можно проверить по Приложению Б, "Ответы".
Тесты
1. Можно ли удалить строку данных из представления, созданного на основе данных нескольких таблиц?
2. При создании таблицы ее владелец автоматически получает соответствующие привилегии в отношении этой таблицы. Верно ли это в случае создания представлений?
3. Какое выражение используется для упорядочения данных при создании представления?
4. Какая опция может быть использована для создания представления из другого представления, если необходимо гарантировать целостность данных?
5. При попытке удаления представления было получено сообщение об ошибке ввиду того, что имелись зависимые представления. Что нужно сделать, чтобы все-таки удалить представление?
Упражнения
1. Запишите оператор, создающий представление на основе всех данных таблицы EMPLOYEEJTBL.
2. Запишите оператор, создающий представление, возвращающее среднюю почасовую оплату и среднюю зарплату по каждому из городов для таблицы
EMPLOYEEJTBL.
3. Запишите операторы, удаляющие представления, созданные в результате выполнения пп. 1 и 2.
Читать дальше