
- •1. Файловые системы и файловые базы данных. Особенности и основные характеристики.
- •2. Понятия базы данных, банка данных. Классификация баз данных.
- •3. Субд. Классификация субд. Технология использования субд
- •4. Основные функции субд. Типовая организация субд.
- •5.Субд в многопользовательских системах. Архитектура многопользовательских субд (с телеобработкой, файл-серверные, клиент-серверные). Субд в многопользовательских системах
- •6.ОбязанностиАдминистратора базы данных.
- •7. Уровни абстракции в субд.
- •8. Общие сведения о терминологии баз данных (предметная область, объекты, атрибуты, ключи, связи между объектами)
- •9. Модели данных (сетевая, иерархическая, реляционная).
- •10. Основные понятия реляционных баз данных (тип данных, домен, атрибут, кортеж, первичный ключ, отношение).
- •11. Операции над данными (включить, удалить, обновить, объединение, пересечение, вычитание, декартово произведение, выборка, проекция, соединение, деление).
- •Специальные реляционные операторы
- •Операции над множествами
- •12. Основные этапы проектирования баз данных.
- •13. Двенадцать правил Кодда, характеризующих реляционную субд.
- •14. Понятие нормальных форм в отношении. Особенности приведения отношений к 1nf, 2nf, 3nf.
- •2Нф (Вторая Нормальная Форма)
- •3Нф (Третья Нормальная Форма)
- •15. Нормальные формы более высоких порядков
Операции над множествами
Теоретико-множественные операторы
Объединение
|
Результатом является новое отношение, в которое входят все кортежи первого отношения и недостающие кортежи второго (дубликаты исключаются). |
Реляционное объединение (relational union) - это результат выполнения операции конкатенации над двумя наборами записей. Эту операцию можно представить как реляционную «версию» сложения. Результат операции объединения набора записей А и набора записей В - простое добавление всех записей из набора А в набор В.
Синтаксис
операции объединения:
Замечание. Объединение, как и любое отношение, не может содержать одинаковых кортежей. Поэтому, если некоторый кортеж входит и в отношение , и отношение , то в объединение он входит один раз.
SELECT CoiripanyName AS Name, Address, City.PostalCode
FROM Customers
UNION
SELECT [FirstName] & " " & [LastName] AS Name,
Address, City.PostalCode
FROM Employees
ORDER BY Name;
Пересечение
|
Результатом является новое отношение, в которое входят все кортежи первого отношения, которые есть во втором. |
Операция пересечения (intersection operator) возвращает записи, общие для двух наборов. Очевидно, что пересечение можно использовать для поиска повторяющихся записей, что и происходит чаще всего. Пересечение реализуется при помощи внешних соединений.
Синтаксис
операции пересечения:
SELECT DuplicateCustoners1
FROM DuplicateCustomers1
LEFT JOIN DuplicateCustoniers2
ON (DuplicateCustoners1.CustomerID = DuplicateCustomers2.CustomerID)
AND (DuplicateCustomers1.CompanyName = DuplicateCustomers2.CompariyName)
WHERE (((DuplicateCustomers2.CustomerlD) IS NOT NULL));
Разность
|
Результат противоположен операции пересечения, т.е. в новое отношение входят только те кортежи первого отношения, которых нет во втором. |
Операция нахождения разности используется для поиска утерянных (осиротевших) строк. Реляционная разность (relational difference) для двух наборов записей будет содержать все записи, которые принадлежат к одному набору записей, но не принадлежат к другому.
Синтаксис
операции вычитания:
SELECT DuplicateCustomers1.*
FROM DuplicateCustomers1
LEFT JOIN DuplicateCustoraers2
ON (DuplicateCiJStomers1.CustomerID = DuplicateCustomers2.CustomerID)
AND (DuplicateCustomers1.CompariyName = DuplicateCustomers2.CompanyName)
MERE (DuplicateCustomers2.CustonierID IS NULL);
Декартово произведение
|
Соединяет каждый кортеж первого отношения с каждым кортежем второго. Результатом является новое отношения, число кортежей в котором (мощность отношения) равно произведению мощностей исходных отношений, а число атрибутов (степень)— сумме их степеней. |
Декартово произведение двух наборов записей представляет собой соединение каждой записи из одного набора записей с каждой записью из другого набора.
Синтаксис
операции декартового произведения:
SELECT CustomerName, CSRName
FROM Customer, СSRs;