Создание и модификация обзоров. Группы — КиберПедия 

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Создание и модификация обзоров. Группы

2017-12-13 150
Создание и модификация обзоров. Группы 0.00 из 5.00 0 оценок
Заказать работу

Управления правами

Цель работы: формирование умений и навыков создания и модификации обзоров, создания ролей и назначения им прав пользователей.

 

Краткие теоретические сведения

Понятие «обзор»

Обзоры обеспечивают способ создания настраиваемой версии основных таблиц, отображающей только те данные, которые интересуют пользователя или группу пользователей.

Когда обзор определен, с ним можно работать как с обычной таблицей. Обзор может быть получен из одной или нескольких таблиц или других обзоров. Обзоры выглядят также как и обычные таблицы БД, но физически не хранятся в БД. В БД хранится определение обзора.

Создание обзора не создает копию данных, в то же время изменение данных через обзор изменяет данные в основных таблицах.

Обзор представляет собой виртуальную таблицу, которая создается на основе результатов выборки данных из базы командой SELECT. Он может быть создан:

- на основе подмножества столбцов отдельной таблицы;

- на основе подмножества строк отдельной таблицы;

- на основе комбинации подмножества строк и столбцов отдельной таблицы;

- на основе комбинации подмножества строк и столбцов объединения нескольких таблиц;

- на основе результатов работы хранимой процедуры.

 

Создание обзоров

Синтаксис создания обзора следующий:

CREATE VIEW <имя обзора> [(<столбец обзора1>, <столбец обзора2>, ….)]

AS <условие выборки SELECT> [ WITH CHECK OPTION ];

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

В табл. 14.1 приведены синтаксические конструкции команды CREATE VIEW.

 

Типы обзоров

Обзоры могут быть:

- обновляемыми (updatable);

- необновляемыми (read-only).

Для обновляемого обзора необходимо, чтобы:

- он представлял собой подмножество одной таблицы или обновляемого обзора;

- все столбцы таблицы, не вошедшие в обзор, допускали значение NULL;

- команда SELECT, на которой основан обзор, не содержала подзапросов, конструкций DISTINCT, HAVING, огрегирующих функций, присоединенных таблиц, пользовательских функций или хранимых процедур.

 

Т а б л и ц а 14.1

 

Конструкция Описание
<имя обзора> Имя обзора. Имя должно быть уникальным в перечне имен обзоров, таблиц и хранимых процедур
<столбец обзора 1> Имя столбца обзора. Имя должно быть уникальным в перечне имен столбцов обзора Имя обязательно, если обзор включает столбцы-выражения. Если имя не указано, используется имя соответствующего столбца таблицы SELECT. Имена столбцов обзора соответствуют столбцам выборки SELECT
Условие выборки SELECT Задает условия выборки данных посредством команды SELECT. Может использоваться полный синтаксис команды за исключением конструкции ORDER BY
WITH CHECK OPTION Предотвращает операции INSERT и UPDATE в обзоре, если они нарушают условие поиска в конструкции WHERE команды SELECT

 

Обзоры только для чтения также могут обновляться, но на основе использования триггеров. В этом случае все действия по обновлению данных в таблицах выполняются соответствующими триггерами обзора.

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

Пример 1. Создать обзор для вывода списка всех студентов.

CREATE VIEW STUD_1 AS

SELECT * FROM STUDENT

WHERE univ_id NOT IN (1);

Пример 2. Обновить данные в обзоре.

UPDATE stud_1

SET surname = 'Дубков'

WHERE kurs = 4;

Обновление данных в обзоре с конструкцией

WITH CHECK OPTION

Если обзор создан с опцией проверки (WITH CHECK OPTION), то при попытке обновления или вставки данных проверяется, удовлетворяют ли новые данные условиям выборки, заданным конструкцией WHERE. Данные будут записаны только при выполнении этих условий.

З а м е ч а н и я:

1. Опция применима только для обновляемых обзоров.

2. Значения могут быть вставлены через обзор только для тех столбцов, которые входят в обзор. Для столбцов таблицы, не вошедших в обзор, InterBase устанавливает значения NULL.

НЕЛЬЗЯ непосредственно изменить обзор. Сначала его нужно удалить, а затем создать заново командой CREATE VIEW.

Удаление обзора означает удаление из БД его описания, но не самих данных. Удаление обзора разрешено пользователю, создавшему обзор, при выполнении условия: обзор не должен использоваться другим обзором, хранимой процедурой или ограничением целостности (CHECK-конструкцией). В этом случает нужно предварительно удалить все объекты, использующие данный обзор.

Синтаксис команды удаления обзора:

DROP VIEW <имя обзора>;


Поделиться с друзьями:

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.