- •1.Системы баз данных.
- •6. Трехуровневая архитектура ansi-sparc.
- •7. Модели данных. Иерархическая, сетевая модели.
- •11. Реляционное исчисление.
- •22. Нормализация данных. Цель нормализации, избыточность данных и аномалии обновления.
- •28. Структура команды запроса.
- •Vsize ( выраж ). Возвpащает количество байтов, котоpое занимает "выраж" во внутpеннем пpедставлении oracle. 33. Групповые функции.
- •35. Упорядочивание данных, найденных запросом.
- •42. Словарь данных. Определение, назначение, структура.
- •47. Использование операторов some, all, exists.
- •49. Представления (views). Назначение, создание, хранение.
- •51. Именование объектов в базе данных.
49. Представления (views). Назначение, создание, хранение.
С помощью оператора CREATE VIEW можно создать виртуальную (логическую) таблицу. Такая логическая таблица существует только в памяти, хотя с ней можно работать как с реальной таблицей. И в этом случае можно создавать представления (views), не беспокоясь о том, что пользователь может по неосторожности удалить данные или добавить некорректную информацию в реальную таблицу. С помощью представлений можно обеспечить пользователям доступ ко всем данным, не беспокоясь о том, что они могут быть повреждены в реальных таблицах. А возможность предоставить пользователям доступ только к определенной части информации также обеспечивает конфиденциальность и повышает защищенность данных. Представления обновляются динамически. Представления можно использовать в качестве основы для отчета. Виртуальная таблица (представление, view), которая содержит информацию о сотрудниках 10 отдела: CREATE VIEW emp_10 AS SELECT * FROM emp WHERE deptno=10; 50. Синонимы как объекты баз данных.
Синоним (Synonym) - это альтернативное имя (псевдоним) для объекта схемы. Если для какого либо объекта базы данных Oracle существует синоним, то к объекту из SQL запроса можно обращаться либо по его настоящему имени, либо по синониму. Так же они обеспечивают некоторый уровень безопасности, поскольку скрывают имя объекта и его владельца, а так же делают прозрачным местоположение удаленных объектов распределенных баз данных. Синонимы позволяют переименовывать и перемещать базовые объекты. При том переопределяется только синоним, а приложение не требует никаких модификаций. Различают два типа синонимов: - Частный (PRIVATE) - синонимы содержатся в схеме конкретного пользователя и доступны только самому пользователю, и тем, кому он предоставил соответствующие права доступа. - Общий (PUBLIC) - этими синонимами владеет специальная группа пользователей - PUBLIC, в результате чего эти синонимы доступны всем пользователям базы данных. Создание синонимов Чтобы создать частный синоним необходима привилегия CREATE SYNONYM, для того чтобы иметь права на создание синонима в схеме другого пользователя, необходима привилегия CREATE ANY SYNONYM. Для создания общих синонимов, необходима привилегия CREATE PUBLIC SYNONYM. Для создания синонимов используется конструкция CREATE SYNONYM или CREATE PUBLIC SYNONYM, в зависимости от типа создаваемого синонима. При создании наличие реального объекта и привилегий доступа к нему не требуется. CREATE SYNONYM [имя_синонима] FOR [имя_объекта] CREATE PUBLIC SYNONYM [имя_синонима] FOR [имя_объекта] Удаление синонимов В своей схеме пользователь может удалять любые частные синонимы. Для удаления частных синонимов в схеме другого пользователя, необходима привилегия DROP ANY SYNONYM, для удаления общих - DROP PUBLIC SYNONYM. Для удаления используется оператор - DROP SYNONYM. Для удаления общего синонима - DROP PUBLIC SYNONYM. При удалении синонима, его определение удаляется из словаря данных. Все объекты ссылающиеся на удаленный синоним остаются, однако они становятся недействительными и их использование невозможно. Объекты, для которых создавался синоним остаются без изменений и доступны для использования. Если удален объект, для которого создавался синоним, то синоним остается, но при обращении к нему будет сообщено об ошибке. Если объект, для которого создавался синоним, был пересоздан, то синоним требуется перекомпилировать. Для этого используется предложение: ALTER SYNONYM [имя_синонима] COMPILE; Например создадим синоним таблицы emp для пользователя SCOTT: CREATE PUBLIC SYNONYM s_emp FOR SCOTT.emp; Теперь запрос SELECT * FROM SCOTT.emp можно заменить на: SELECT * FROM s_emp; Это дало возможность скрыть имя пользователя.