- •Основы баз данных. Введение.
- •БзХранятся не только данные, но и знания о применении этих данных. Реализуются они в виде процедур и алгоритмов. Выборки обрабатывают данные.
- •История БнД.
- •Проблемы бд:
- •Состав БнД.
- •Процесс проектирования базы данных.
- •Er-модель (модель Чена).
- •Основные понятия:
- •Виды связи
- •Рекурсивные связи
- •Представление связей более высокого порядка (не бинарных).
- •Избыточное дублирование.
- •Реляционная модель данных.
- •12 Правил Кодда, которым должна удовлетворять реляционная база данных.
- •Операции над данными.
- •Реляционная алгебра.
- •Свойства реляционных операций.
- •Понятие функциональной зависимости (ф.З).
- •Запись запросов на языке реляционной алгебры.
- •Проектирование реляционной базы данных.
- •Методы проектирования.
- •7 Правил Джексона.
- •Язык доступа к данным, основанный на исчислении с переменными кортежами.
- •Атрибуты, используемые для описания таблиц.
- •Обработка ссылочной целостности.
- •Операторы манипулирования данными.
- •Как задается условие?
- •Запросы, которые реализуются на основе соединения.
- •Подзапрос.
- •Использование квантора exists для поиска пересечения и разности.
- •Квантор общности моделирующий операцию деления.
- •Соответствия между операциями реляционной алгебры и sql.
- •Технологии клиент-сервер.
- •1 Вариант - файловый сервер.
- •2 Вариант – удаленный доступ.
- •3 Вариант – сервер Базы Данных.
- •4 Вариант – сервер приложений.
- •Внутренняя модель данных.
- •B-дерево.
- •Язык query by example (qbe)
- •Операции выборки в отношениях, имеющих древовидную структуру
- •Операции запоминания
- •Библиотечные функции
Библиотечные функции
Простая выборка с использованием функции. Получить значение общего количества поставщиков.
Поставщики |
№ |
фамилия |
статус |
город |
|
Р.COUNT.ALL.SX |
|
|
|
8.5.2. Простая выборка с использованием функции. Получить значение общего количества поставщиков, поставляющих детали в настоящее время.
поставки |
№поставщика |
№детали |
количество |
|
Р.COUNT.U.ALL.SX |
|
|
«U.» означает уникальный (ALL автоматически не исключает избыточные повторяющиеся данные).
Выборка по условию с использованием функции. Получить значение общего количества поставщиков детали Р2.
Поставки |
№поставщиков |
№детали |
количество |
|
P.COUNT.ALL.SX |
Р2 |
|
Выборка по условию с использованием функции. Получить значение общего количества поставок детали Р2.
Поставки |
№поставщика |
№детали |
количество |
|
|
Р2 |
P.SUM.ALL.Q |
Выборка с группированием. Для каждой поставляемой детали получить номер детали и значение количества поставщиков этой детали.
Поставки |
№поставщика |
№детали |
количество |
|
Р.COUNT.ALL.SX |
Р.РХ |
|
Заметьте, что явного задания оператора группирования не требуется. Оператор ALL автоматически обеспечивает желаемый эффект, так как в этом запросе, например, выражение ALL.SX означает множество всех номеров поставщиков, соответствующее РХ.
Выборка по условию с использованием блока условия и функции. Получить номера всех деталей, которые поставляются более чем одним поставщиком.
Поставщики |
№поставщика |
№детали |
количество |
|
ALL.SX |
P.PX |
|
-
Блок условия
COUNT.ALL.SX >1
Заключение
Язык QBE обладает рядом особенностей, отличающих его от других реляционных языков, подробно обсуждаемых в этой книге. Среди этих особенностей мы можем отметить использование примеров в спецификации запросов (и других операций), наличие специальных операторов для работы с отношениями, имеющими древовидную структуру, и для обращения к словарю использование простого двумерного синтаксиса и ориентация на работу с дисплеями.
Пользователю языком QBE предоставлена свободе построения запроса тем способом, который кажется пользователю наиболее естественным. Действительно, запрос может быть построен в том порядке, который нравится пользователю: порядок строк в таблице запроса совершенно безразличен. Более того, порядок, в котором пользователь заносит записи, составляющие эти строки, также совершенно произволен. Например, возьмем запрос: «Получить имена поставщиков, поставляющих детали красного цвета». Пользователь может представлять себе этот запрос в виде: «Выделить красные детали, затем выделить номера поставщиков, поставляющих эти детали, и затем выделить их имена». В таком случае он, вероятно, заполнит таблицу в порядке Детали, Поставки, Поставщики. Или же пользователь может представить себе этот же запрос как «Выделить имена тех поставщиков, таких, что поставляемая ими деталь имеет красный цвет». В этом случае он, вероятно, заполнит таблицу в порядке Поставщики, Поставки, Детали. В любом варианте это один и тот же запрос. Другими словами, QBE является в высокой степени непроцедурным языком, который обеспечивает возможность представления некоторой задачи различными способами.
Основы баз данных. 1
Введение. 1
ИПС 1
БЗ Хранятся не только данные, но и знания о применении этих данных. Реализуются они в виде процедур и алгоритмов. Выборки обрабатывают данные. 1
История БнД. 1
Проблемы БД: 1
Состав БнД. 3
Процесс проектирования базы данных. 4
ER-модель (модель Чена). 5
Основные понятия: 5
Виды связи 6
Рекурсивные связи 10
Реляционная модель данных. 11
12 правил Кодда, 13
которым должна удовлетворять реляционная база данных. 13
Операции над данными. 13
Реляционная алгебра. 13
Свойства реляционных операций. 17
Понятие функциональной зависимости (Ф.З). 19
Запись запросов на языке реляционной алгебры. 20
Проектирование реляционной базы данных. 21
Методы проектирования. 22
Язык доступа к данным, 23
основанный на исчислении с переменными кортежами. 23
Технологии клиент-сервер. 29
1 вариант - файловый сервер. 29
2 вариант – удаленный доступ. 29
3 вариант – сервер Базы Данных. 29
4 вариант – сервер приложений. 30
Внутренняя модель данных. 31
ЯЗЫК QUERY BY EXAMPLE (QBE) 32