Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Сгруппированные представления
Запрос, определяющий представление, может содержать предложение GROUP BY. Представление такого типа называется сгруппированным, поскольку данные в нем являются результатом запроса с группировкой. Сгруппированные представления выполняют ту же функцию, что и запросы с группировкой. В них родственные строки данных объединяются в группы и для каждой группы в таблице результатов запроса создается одна строка, содержащая итоговые данные по этой группе. С помощью сгруппированного представления запрос с группировкой превращается в виртуальную таблицу, к которой в дальнейшем можно обращаться.
Пример 8: Создать представление, включающее данные по должности.
create view group_view(id_job, count, average, sum_sal) as Select job_id, count(*), avg(SALARY), sum(salary) from employees group by job_id
Рисунок №70 – Результат представления в примере 8.
Как видно из этого примера, в определении сгруппированного представления всегда содержится список имен столбцов. В этом списке присваиваются имена тем столбцам сгруппированного представления, которые являются производными от статистических функций, таких как count(*). В нем также может быть задано измененное имя сгруппированного столбца. В данном примере столбец job_id таблицы employees становится столбцом jobs представления group_view. После создания сгруппированного представления его можно использовать для упрощения запросов. Пример 9: select JOB_TITLE, id_job, count, average, sum_sal from jobs, group_view where job_id = id_job order by job_title
Рисунок №71 – Результат выборки в примере 9.
В отличие от горизонтальных и вертикальных представлений, каждой строке сгруппированного представления не соответствует какая-то одна строка исходной таблицы. Сгруппированное представление не является просто фильтром исходной таблицы, скрывающим некоторые строки и столбцы. Оно отображает исходную таблицу в виде резюме, поэтому поддержка такой виртуальной таблицы требует от СУБД значительного объема вычислений. К сгруппированным представлениям можно обращаться с запросами точно так Же, как и к более простым представлениям. Однако сгруппированные запросы нельзя обновлять. Причина очевидна: что значит, например, "обновить среднюю величину зарплаты для служащего с идентификатором 103"? Так как каждая строка сгруппированного представления соответствует группе строк исходной таблицы, а столбцы, как правило, содержат вычисляемые данные, невозможно преобразовать запрос на обновление сгруппированного представления в запрос на обновление строк исходной таблицы. Таким образом, сгруппированные представления функционируют как представления, доступные "только для чтения", к которым можно обращаться с запросами на выборку, но не на обновление.
3. Задания для самостоятельной работы Для проектируемой базы данных создайте представления нескольких типов. 4 Контрольные вопросы 1. Дайте определение представлению. 2. Какие данные использует представление? 3. Назовите преимущества представлений. 4. Назовите недостатки представлений 5. Приведите пример горизонтального представления 6. Приведите пример вертикального представления. 7. Приведите пример смешанного представления. 8. Приведите пример сгруппированного представления. Лабораторная работа №7 Ограничения в Oracle.
1 Цель и порядок работы 1.1 Цель работы Ознакомиться со структурой и понятием ограничений, принципом их реализации.
1.2 Порядок выполнения работы - Ознакомиться с описанием работы; - Выполнить задание для самостоятельной работы; - Ответить на контрольные вопросы; - Представить результаты работы преподавателю.
2. Общие сведения
Ограничение — это, прежде всего, формулировка требований к данным. Ограничения устанавливаются на уровне столбца или таблицы и гарантируют соответствие данных определенным правилам обеспечения целостности данных. В настоящей лабораторной работе приведен общий обзор следующих трех типов ограничений. - Ограничения сущностей. - Ограничения домена. - Ограничения ссылочной целостности. Кроме того, более подробно будут рассматриваться конкретные методы реализации каждого из ограничений этих типов, включая перечисленные ниже. - Ограничения первичного ключа (PRIMARY KEY). - Ограничения внешнего ключа (FOREIGN KEY). - Ограничения уникальности (UNIQUE, именуемые также ограничениями альтернативного ключа).
- Ограничения проверки (CHECK). - Ограничения заданных по умолчанию значений (DEFAULT). Предусмотрен целый ряд различных способов реализации ограничений, но все эти способы относятся к одной из трех категорий — ограничения сущностей, ограничение домена и ограничения ссылочной целостности. Ограничения домена Ограничения домена распространяются на один или несколько столбцов. Под этими ограничениями подразумеваются способы обеспечения того, чтобы какой-то конкретный столбец или ряд столбцов соответствовал определенным критериям. Эти ограничения применяются при вставке или обновлении строки без учета того, что в таблице имеются какие-либо иные другие строки; интерес представляют только данные рассматриваемого столбца. Ограничения сущности Ограничения сущности полностью относятся к отдельным строкам. В действительности в ограничении этого типа не рассматривается весь столбец как таковой, интерес представляет только какая-то конкретная строка. Самым наглядным ограничением этого типа является такое ограничение, согласно которому в каждой строка таблицы должно присутствовать уникальное значение одного столбца или комбинации столбцов. На первый взгляд может показаться, что такое определение ограничения сущности, согласно которому, допустим, какой-то столбец должен содержать уникальные значения, полностью совпадает с определением ограничения домена. Но фактически дело обстоит иначе. В формулировке ограничения сущности ничего не сказано о том, что данные столбца должны соответствовать какому-то определенному формату или что значения в столбце должны быть больше или меньше какой-то величины. Единственное, что сказано, относится только к определенной строке и предъявляемое к ней требование состоит лишь в том, чтобы содержащееся в ней значение больше не встречалось в какой-либо другой строке в той же таблице. Ограничения такого рода будут рассматриваться в контексте описания ограничений PRIMARY KEY и UNIQUE.
|
||||||
Последнее изменение этой страницы: 2017-02-09; просмотров: 383; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.31.240 (0.006 с.) |