«Базы данных»
Содержание:
1.Основные понятия
2. Отношение
3. Фильтр
4.Логическое выражение
5.Таблицы истинности
6.Запрос
7.Типы соединения таблиц
8 .Конструирование базы данных
9. Правила нормализации таблиц
10.Отображения
11.Целостность данных
12. Связь
Что такое Базы данных?
«Множество данных, организованных для быстрого и удобного поиска и извлечения» С. А. Бешенков.
«БД – это совокупность сведений о конкретных объектах реального мира в какой-либо предметной области» Ю.А. Шафрин.
«БД – автоматическое справочное бюро, ориентированное на широкий круг заранее не регламентированных запросов и большие массивы однородной информации» А.Г. Гейн.
- Андрей – отец Павла
- Сергей – отец Жени Андрей – отец Ани
Объект Х – отец объекта У
- Папа купил книгу
- Папа купил машину
- Мама купила шубу
Объект Х купил объект У
Аргумент
Имя отношения
КУПИТЬ (Х,У)
БЫТЬ_ОТЦОМ(Х,У)
БЫТЬ_ОТЦОМ(отец:Х,ребенок:У)
Имя аргумента - атрибут
Отношение - функция
Отношение - таблица
БЫТЬ_ОТЦОМ
f(x,y)
Отец
Ребенок
Андрей
Павел
Андрей
Аня
Сергей
Женя
Если каждому значению одной переменной величины Х каким-либо образом сопоставлено не более одного значения другой величины У, то говорят, что задана функция.
КУПИТЬ
Кто
Папа
Что
Папа
Книга
Машина
Мама
Шуба
Таблица – это отношение значений различных атрибутов, относящихся к одному объекту.
Отношение
Атрибут
(заголовок столбца)
Атрибут
(заголовок столбца)
Имя отношения
Схема отношения
(строка заголовков)
Имя отношения
Схема отношения
(строка заголовков)
Отношение (Таблица)
Отношение (Таблица)
СОТРУДНИКИ
ФИО
Отдел
Иванов
I
Петров
Должность
II
Сидоров
Лаборант
Инженер
I
инженер
Кортеж (строка)
Кортеж (строка)
Значение атрибута
Значение атрибута
Домен (столбец)
Домен (столбец)
Фильтр
«Совокупность условий (логическое выражение), которую указывает пользователь для выделения некоторого подмножества строк таблицы в реляционной базе данных» Ю.А.Шафрин .
«Фильтр – это набор условий»,
«…режим, позволяющий отображать только некоторые записи»,
«нечто, отсеивающее определенные элементы».
Фильтр – логическое выражение Фильтрация – отбор строк таблицы, для которых данное логическое выражение истинно. А.Г.Гейн
БЫТЬ_ОТЦОМ
Отец
Ребенок
Андрей
Павел
Андрей
Аня
Сергей
Женя
Андрей
Володя
Исходное отношение:
БЫТЬ_ОТЦОМ(отец, ребенок).
Фильтр:
Х(Отец=Андрей)
Результат фильтрации - отношение: БЫТЬ_ОТЦОМ(Павел, Женя, Володя).
Результат фильтрации:
БЫТЬ_ОТЦОМ
Отец
Андрей
Ребенок
Андрей
Павел
Аня
Андрей
Володя
Фильтром для данного отношения является логическое выражение, не содержащее атрибутов, не входящих в данное отношение.
Результатом фильтрации данного отношения относительно заданного логического выражения (функции Х) называется отношение, состоящее только из тех записей исходного отношения, для которых функция Х принимает значение ИСТИНА. А.Г.Гейн
Логическое выражение
«Выражение. Форма записи некоторого высказывания. Выражение состоит из операндов, соединенных специальными знаками, которые определяют семантику выражения» Ю.А.Шафрин.
«Любая комбинация операторов, констант, функций и др. , результатом которой является конкретное значение» Help Access.
Арифметическое выражение
Формально арифметическое выражение определяется по следующим признакам:
- Всякое число или атрибут есть арифметическое выражение.
- Если А арифметическое выражение, то (А) тоже арифметическое выражение.
- Если А и В арифметические выражения, то А+В, А_В, А*В, А/В тоже арифметические выражения.
- Других арифметических выражений нет.
Значением арифметического выражения может быть число или арифметическое выражение.
Логическое выражение
Пусть Х – атрибут, Т- арифметическое выражение.
- Выражение Х=Т, ХT, XT – логические выражения.
- Если Х логическое выражение, то (Х) – тоже логическое выражение.
- Если Х и У – логические выражения, то X AND Y, X OR Y, NOT X – тоже логические выражения.
- ИСТИНА и ЛОЖЬ – логические выражения.
- Других логических выражений нет.
- Значением логического выражения является ИСТИНА и ЛОЖЬ .
Таблицы истинности логических выражений двузначной логики
OR
AND
X
Y
Истина
X and Y
Истина
Истина
Ложь
Истина
Ложь
Истина
Ложь
Ложь
Ложь
Ложь
Ложь
X
Y
Истина
Истина
X OR Y
Истина
Ложь
Истина
Ложь
Истина
Истина
Ложь
Ложь
Истина
Ложь
NOT
X
Истина
NOT X
Ложь
Ложь
Истина
Таблица истинности сложных логических выражений двузначной логики
X
Y
Истина
Истина
X OR Y
Истина
Ложь
NOT(X OR Y)
Истина
Ложь
Истина
Ложь
Ложь
Истина
NOT X
Ложь
Ложь
NOT X OR Y
Истина
Ложь
Истина
Ложь
Ложь
Ложь
Ложь
Истина
Истина
Истина
Истина
Истина
Порядок выполнения логических операций
X
Истина
NOT X
Не определ
Ложь
Ложь
Не определ
Истина
Таблицы истинности логических выражений для трехзначной логики
AND
OR
X
Y
Истина
Истина
Истина
X AND Y
Не опред
Истина
Истина
Ложь
Не опред
Не опред
Истина
Ложь
Не опред
Не опред
Не опред
Не опред
Ложь
Ложь
Не опред
Истина
Ложь
Ложь
Не опред
Ложь
Ложь
Ложь
Ложь
Ложь
X
Y
Истина
Истина
X OR Y
Истина
Не опред
Истина
Истина
Истина
Ложь
Не опред
Истина
Не опред
Истина
Истина
Не опред
Не опред
Ложь
Ложь
Не опред
Истина
Ложь
Не опред
Не опред
Истина
Ложь
Не опред
Ложь
Ложь
Таблицы истинности сложных логических выражений для трехзначной логики
X
Y
Истина
Истина
X OR Y
Истина
Не опр
Истина
Истина
NOT(X OR Y)
Ложь
Ложь
NOT X
Истина
Не опр
Не опр
Истина
Истина
NOT X OR Y
Ложь
Ложь
Ложь
Истина
Не опр
Не опр
Истина
Ложь
Ложь
Не опр
Не опр
Ложь
Ложь
Ложь
Ложь
Не опр
Истина
Не опр
Не опр
Ложь
Ложь
Не опр
Истина
Истина
Не опр
Не опр
Ложь
Ложь
Не опр
Не опр
Не опр
Не опр
Ложь
Не опр
Истина
Истина
Истина
Истина
Истина
Истина
Истина
Темы исследовательских заданий учащимся по теме БД
1. Построить таблицы истинности двузначной и трехзначной логики для другого сочетаний простых логических функций.
2. Как выбрать те строки, для которых значение функции Х равно ЛОЖЬ ?
3. Можно ли в трехзначной логике с помощью логических операций построить функцию, которая бы значение НЕ ОПРЕДЕЛЕНО переработало в значение ИСТИНА .
Функция NULL в БД Access
Таблица истинности
X
NULL X
Истина
Ложь
Не определено
Истина
Ложь
Ложь
Бланк QBE (Query By Example-запрос по образцу
3) AND ( Ширина OR ( Вес =3 AND Высота5 AND NOT ( Ширина OR (Вес4 AND Высота6 AND Ширина Поле Вес Условие отбора Высота Или =2 Ширина Или NOT3 =3 5 =4 NOT 6 " width="640"
Дизъюнктивная нормальная форма логических выражений
( Вес =2 AND NOT (Высота3) AND ( Ширина
OR ( Вес =3 AND Высота5 AND NOT ( Ширина
OR (Вес4 AND Высота6 AND Ширина
Поле
Вес
Условие отбора
Высота
Или
=2
Ширина
Или
NOT3
=3
5
=4
NOT
6
80 AND NOT (Зарплата80) AND Зарплата Поле Условие отбора Возраст Зарплата 80 Или NOT NOT 80 " width="640"
Дизъюнктивная нормальная форма логических выражений
(Возраст 80 AND NOT (Зарплата80) AND Зарплата
Поле
Условие отбора
Возраст
Зарплата
80
Или
NOT
NOT 80
80 AND NOT ( Зарплата OR (NOT ( Возраст 80) AND Зарплата 100)) Поле Возраст Условие отбора Зарплата Или (Возраст 80 OR NOT (Зарплата AND ( NOT (Возраст 80) AND Зарплата " width="640"
NOT(( Возраст 80 AND NOT ( Зарплата
OR (NOT ( Возраст 80) AND Зарплата 100))
Поле
Возраст
Условие отбора
Зарплата
Или
(Возраст 80 OR NOT (Зарплата
AND ( NOT (Возраст 80) AND Зарплата
Алгоритм приведения логических выражений к ДНФ виду
- Записать таблицу истинности, перебирая возможные варианты значений
- Для каждой строки, где F ( x ) ИСТИНА, записать AND выражение
- Все AND выражения соединить оператором OR.
80 OR NOT (Зарплата AND ( NOT (Возраст 80) AND Зарплата Примем Возраст 80 – ИСТИНА, Зарплата 1 Воз-раст 2 Зар - плата Истина 3 4 NOT (2) Ложь Истина 5 NOT(1) Истина Истина Ложь Ложь OR(1,3) Ложь Ложь Ложь 6 Ложь Истина Истина 7 AND 4,2 Истина Истина Ложь Ложь AND 5,6 Ложь Истина Истина Истина Ложь Истина Ложь Ложь Ложь Ложь Ложь " width="640"
Приведение логического выражения к ДНФ виду
(Возраст 80 OR NOT (Зарплата AND ( NOT (Возраст 80) AND Зарплата
Примем Возраст 80 – ИСТИНА, Зарплата
1
Воз-раст
2
Зар - плата
Истина
3
4
NOT (2)
Ложь
Истина
5
NOT(1)
Истина
Истина
Ложь
Ложь
OR(1,3)
Ложь
Ложь
Ложь
6
Ложь
Истина
Истина
7
AND 4,2
Истина
Истина
Ложь
Ложь
AND 5,6
Ложь
Истина
Истина
Истина
Ложь
Истина
Ложь
Ложь
Ложь
Ложь
Ложь
80 OR NOT (Зарплата AND ( NOT (Возраст 80) AND Зарплата Исходная таблица 1 - OR Фамилия Фамилия Воз - раст Воз - раст Иванов Иванов Петров 90 Зар - плата Зар - плата 90 70 Сидоров Сидоров Кузьмин Кузьмин 90 90 70 70 100 100 100 100 2 - AND 3 - AND (1,2) Фамилия Петров Воз - раст Зар - плата 70 Записей, удовлетворя-ющих такому фильтру не может существовать " width="640"
Пример 1.
(Возраст 80 OR NOT (Зарплата AND ( NOT (Возраст 80) AND Зарплата
Исходная таблица
1 - OR
Фамилия
Фамилия
Воз - раст
Воз - раст
Иванов
Иванов
Петров
90
Зар - плата
Зар - плата
90
70
Сидоров
Сидоров
Кузьмин
Кузьмин
90
90
70
70
100
100
100
100
2 - AND
3 - AND (1,2)
Фамилия
Петров
Воз - раст
Зар - плата
70
Записей, удовлетворя-ющих такому фильтру не может существовать
80 AND NOT (Зарплата OR ( NOT (Возраст 80) AND Зарплата Примем: Возраст 80 – ИСТИНА, Зарплата 1 Воз-раст 2 Зар - плата Истина 3 Ложь 4 NOT 2 Истина Истина NOT 1 Ложь Истина 5 Ложь Ложь AND 1,3 Ложь Ложь 6 AND 4,2 Ложь Истина Истина Ложь 7 Ложь Ложь Истина NOT 5 8 Ложь Истина Истина OR 7,6 Истина Истина Ложь Истина Истина Ложь Истина Ложь Ложь Ложь Истина Истина " width="640"
Пример 2
NOT ((Возраст 80 AND NOT (Зарплата OR ( NOT (Возраст 80) AND Зарплата
Примем: Возраст 80 – ИСТИНА, Зарплата
1
Воз-раст
2
Зар - плата
Истина
3
Ложь
4
NOT 2
Истина
Истина
NOT 1
Ложь
Истина
5
Ложь
Ложь
AND 1,3
Ложь
Ложь
6
AND 4,2
Ложь
Истина
Истина
Ложь
7
Ложь
Ложь
Истина
NOT 5
8
Ложь
Истина
Истина
OR
7,6
Истина
Истина
Ложь
Истина
Истина
Ложь
Истина
Ложь
Ложь
Ложь
Истина
Истина
80 – ИСТИНА, У := Зарплата Пример 2 1 2 Воз-раст 8 Зар - плата Истина OR 7,6 Истина Ложь Истина Истина Истина Истина Ложь Ложь Ложь Ложь Истина ( Х AND Y) OR (NOT X AND Y) OR (NOT X AND NOT Y); ( Возраст 80 AND Зарплата OR (NOT( Возраст 80) AND Зарплата OR (NOT( Возраст 80) AND NOT ( Зарплата " width="640"
Примем: X:= Возраст 80 – ИСТИНА,
У := Зарплата
Пример 2
1
2
Воз-раст
8
Зар - плата
Истина
OR
7,6
Истина
Ложь
Истина
Истина
Истина
Истина
Ложь
Ложь
Ложь
Ложь
Истина
( Х AND Y)
OR (NOT X AND Y)
OR (NOT X AND NOT Y);
( Возраст 80 AND Зарплата
OR (NOT( Возраст 80) AND Зарплата
OR (NOT( Возраст 80) AND NOT ( Зарплата
80 AND Зарплата OR (NOT( Возраст 80) AND Зарплата OR (NOT( Возраст 80) AND NOT ( Зарплата Пример 2 проверка 1 - AND Исходная таблица Фамилия Воз-раст Иванов Зарплата 90 Петров 70 Сидоров Кузьмин 90 70 100 100 Фамилия Возраст Иванов Зарплата 90 2 - AND Фамилия Петров Возраст Зарплата 70 OR (1,2,3) 3 - AND Фамилия Кузьмин Возраст Зарплата 70 100 Фамилия Иванов Возраст Петров Зарплата 90 Кузьмин 70 70 100 " width="640"
( Возраст 80 AND Зарплата
OR (NOT( Возраст 80) AND Зарплата
OR (NOT( Возраст 80) AND NOT ( Зарплата
Пример 2 проверка
1 - AND
Исходная таблица
Фамилия
Воз-раст
Иванов
Зарплата
90
Петров
70
Сидоров
Кузьмин
90
70
100
100
Фамилия
Возраст
Иванов
Зарплата
90
2 - AND
Фамилия
Петров
Возраст
Зарплата
70
OR (1,2,3)
3 - AND
Фамилия
Кузьмин
Возраст
Зарплата
70
100
Фамилия
Иванов
Возраст
Петров
Зарплата
90
Кузьмин
70
70
100
80 AND NOT (Зарплата OR ( NOT (Возраст 80) AND Зарплата Пример 2 проверка 1 - AND Исходная таблица Фамилия Возраст Сидоров Зарплата 90 100 Фамилия Возраст Иванов Петров 90 Зарплата 70 Сидоров Кузьмин 90 70 100 100 2 – NOT(1) Фамилия Иванов Возраст Петров Зарплата 90 Кузьмин 70 70 100 4- OR(2,3) Фамилия Иванов Возраст Петров 90 Зарплата Кузьмин 70 70 100 3 - AND Фамилия Петров Возраст 70 Зарплата " width="640"
NOT ((Возраст 80 AND NOT (Зарплата OR ( NOT (Возраст 80) AND Зарплата
Пример 2 проверка
1 - AND
Исходная таблица
Фамилия
Возраст
Сидоров
Зарплата
90
100
Фамилия
Возраст
Иванов
Петров
90
Зарплата
70
Сидоров
Кузьмин
90
70
100
100
2 – NOT(1)
Фамилия
Иванов
Возраст
Петров
Зарплата
90
Кузьмин
70
70
100
4- OR(2,3)
Фамилия
Иванов
Возраст
Петров
90
Зарплата
Кузьмин
70
70
100
3 - AND
Фамилия
Петров
Возраст
70
Зарплата
Каждое логическое выражение может быть преобразовано к равносильному дизъюнкционному нормальному выражению.
NULL значение
Работнички
Фамилия
Имя
Иванов
Отчество
Иван
Петров
Иван
Петрович
Сидоров
Кузьмин
Семенович
Петр
Иван
Иванович
Имя=Иван AND NOT Отчество = Петрович
Имя=Иван AND Отчество= NULL
Что такое Запрос?
Логическое выражение, задающее условие для отбора данных: формула запроса .
Объект СУБД, таблица-запрос, в которой хранятся данные, удовлетворяющие формуле запроса.
В БД Access первое соответствует структурному виду запроса, второе – табличному.
Определения понятия «Запрос»
Запрос – это вопрос о данных. …запрос –выборка – это производная таблица». Ю. А. Шафрин
«Запросы – это специальные структуры, предназначенные для обработки данных…..Запрос – это специальный объект БД, предназначенный для выборки данных из таблицы» С. В. Симонович
“ Запрос – это требование на отбор данных или на выполнение определенного действия с данными». Help Access
«Запрос есть функция, сопоставляющая ответ каждому допустимому состоянию»
А. Г. Гейн
Последовательность операций при составлении ответа на запрос
Типы соединений таблиц: внутреннее соединение
ТЕЛЕФОНЫ
ЗВОНКИ
Номер
Владелец
411064
Адрес
Борисов
473298
Алексеев
Чекистов 1
56677
Сиреневый 5
Петров
601130
Иванов
Ленина 17
Щорса 50
Кто
Кому
411064
473298
Дата
473298
601130
08.08.2003
550011
08.08.2003
330102
08.08.2003
Соединяются строки с одинаковыми значениями атрибутов
Внутреннее соединение по условию НОМЕР=КТО
Номер
411064
Владелец
473298
Адрес
Борисов
Кто
Чекистов 1
Алексеев
Сиреневый 5
411064
Кому
473298
473298
Дата
601130
08.08.2003
08.08.2003
внешнее соединение
Внешнее левое
Номер
Владелец
411064
Борисов
Адрес
473298
Алексеев
Кто
56677
Чекистов 1
Петров
411064
601130
Сиреневый 5
Кому
473298
Иванов
473298
Дата
Ленина 17
08.08.2003
Щорса 50
601130
08.08.2003
Внешнее правое
Номер
411064
Владелец
473298
Адрес
Борисов
Кто
Алексеев
Чекистов 1
411064
Кому
Сиреневый 5
473298
473298
Дата
601130
550011
08.08.2003
08.08.2003
330102
08.08.2003
Соединение по разными атрибутам
ТЕЛЕФОНЫ
ЗВОНКИ_1
Номер
Владелец
411064
Адрес
Борисов
473298
Алексеев
Чекистов 1
56677
Сиреневый 5
Петров
601130
Иванов
Ленина 17
Щорса50
Кто
Кому
551718
Дата
557181
10.10.2002
Таблицы можно соединять по условиям НОМЕР-КТО и
НОМЕР-КОМУ
Закономерности обработки таблиц
1. Пусть А и В – отношения. Тогда А В = В А, где означает соединение.
2. Пусть А, В, С – отношения. Тогда А (В С) = (А В) С
3. Пусть А – отношение, Ф1, Ф2 - фильтры. А|Ф1|Ф2=А|Ф2|Ф1, т.е.очередность фильтров можно переставлять.
4. Пусть А – отношение, А/ - проекция. А/|Ф=Ф| А/, т.е. очередность фильтра и проекции можно переставлять.
5. Пусть А – отношение, а1,а2 – атрибуты. А/ а1, а2 = А/ а2, а1, т.е. при выполнении проекции не имеет значения порядок атрибутов.
Конструирование базы данных
Данные – это статистические значения, хранящиеся в таблицах БД.
Информация – это сведения, которые запрашиваются пользователем и предоставляются ему в наиболее удобном виде.
Данные хранятся
Информация запрашивается
Прежде, чем разрабатывать структуру БД, необходимо определить задачи ( какую информацию надо будет получать из БД ), а затем продумать, что нужно хранить в БД ( какие данные нужны для получения требуемой информации )
Название задачи:
Краткое описание:
Связанные задачи:
Элемент данных
Использование
Описание
Объект
Рабочий бланк «Задачи» БД Сессия
Название задачи: Создать ведомость получения стипендии
Краткое описание: Отбор студентов на повышенную стипендию (200%), имеющих все «5», на стипендию 150% за 1 «4» и остальные «5» и на стипендию 100% за две и более «4»
Связанные задачи: : 1. Ввод данных о студентах; 2. Ввод оценок за экзамены;3. Анализ оценок. 4. Создание отчета с ведомостью
Элемент данных
Использование
Номер зачетки
Описание
I
Фамилия
Объект
Номер зачетки
I
Номер зачетки
Фамилия
Табл. Студент
I
Номер зачетки
Табл. Студент
Номер зачетки
О
Фамилия
Табл. Студент
Номер зачетки
О
Табл. Экзамен
Фамилия
Запросы
Варианты использования данных:
I –Input – данные вводятся в таблицу
O- Output – данные считываются из другой таблицы
U – Update –данные изменяются в процессе обработки
D – Delete – данные удаляются в процессе работы
C – Calculate – данные вычисляются
Диаграмма взаимосвязей задач.
Ввод данных о студентах
Ввод результатов экзаменов
Связывание данных о студентах и результатов экзаменов
Связывание результатов экзаменов и условий назначения стипендии
Создание отчета о стипендии
Рабочий бланк «Объекты»
Имя объекта: Таблица Студент
Краткое описание: Информация о студентах
Связанные объекты: Имя Тип связи
Табл. Экзамены Один
Элемент данных
Тип данных
Номер зачетки
Описание
Числовой
(Целое)
Фамилия
Условие на значение
Номер зачетки
Текстовый
Обязательное (ключ)
Фамилия
(20)
Обязательное
Описание данных
Поле
Номер зачетки
Тип дан-ных
Размер поля
Числовой
Фамилия
Целое
Формат поля
Текстовый
Число десятичных знаков
Основной
25
Обязательное поле
0
Пустые строки
Да
Индексированное поле
нет
Да
Да
(Совпаден не доп.)
Нет
Да (Совпад. допуск)
NULL значение и пустые строки
Пустые строки
Да
Пустые строки
Нет
Значение поля известно, но поле пустое
Значение поля не известно, NULL
Пустые строки равны друг другу
NULL строки не равны друг другу
Таблицы можно соединять по пустым строкам
Таблицы нельзя соединять по NULL строкам
Значение NULL не учитывается в итоговых функциях
Ввод пустой строки: знак «» или пробел
Незаполненные строки автоматически преобразуются в NULL строки
Первичный ключ
«Поле, которое однозначно определяет соответствующую запись» Макарова.
«….идентификатор, значение которого однозначно определяет эту и только эту запись» Ю.А. Шафрин
«…одно или несколько полей, комбинация значений которого однозначно определяет каждую запись в таблице. » help Access.
«…ключ – это один из возможных ключей, назначаемых пользователем. Возможным ключом называется набор атрибутов данного отношения, если отображение, порождаемое этим набором из данного отношения является ключом» А.Г.Гейн.
Правила нормализации таблиц
Правило 1. Уникальность полей.
Каждое поле таблицы должно представлять уникальный тип информации, т.е. необходимо избавляться от повторяющихся атрибутов и разделить составные атрибуты на отдельные элементы.
Правило 2. Первичные ключи
Каждая таблица должна иметь уникальный идентификатор или первичный ключ, который может состоять из одного или нескольких полей. Если возможно, в качестве первичного ключа использовать самые простые данные, имеющие «естественные» уникальные значения.
Правило 3. Функциональная зависимость.
Для каждого значения первичного ключа значения в столбцах данных должно относиться к объекту таблицы и полностью его описывать: 1.в таблице не должно быть данных, не относящихся к объекту, определяемому первичным ключом; 2.данные в таблице должны полностью описывать объект.
Правило 4. Независимость полей
Должна быть возможность изменять значения любого поля (кроме первичного ключа) без воздействия на данные других полей.
Отображение «Многие к одному»
Отображение имеет тип Многие к одному , если оно является функцией
Из значения аргумента выходит одна стрелка
Отображение «Один ко многим»
Отображение имеет тип Один ко многим , если для каждого значения результата отображения имеется только одно значение аргумента. При этом одно значение аргумента может отображаться в несколько значений результата
Аргумент Результат
В каждое значение результата входит одна стрелка
Отображение «один к одному»
Отображение имеет тип Один к одному , если каждому значению аргумента соответствует одно значение результата и наоборот .
Аргумент Результат
Из каждого значения аргумента выходит ровно одна стрелка и в каждое значение результата входит тоже ровно одна стрелка
Целостность данных
Правила, обеспечивающие поддержание установленных межтабличных связей при вводе или удалении записей. Если наложены условия целостности данных, Access не позволяет добавлять в связанную таблицу записи, для которых нет соответствующей записей в главной таблице, или же изменять записи в главной таблице таким образом, что после этого в связанной таблице появятся записи, не имеющие соответствующих главных записей, а также удалять записи в главной таблице, для которых имеются подчиненные записи в связанной таблице».
Параметры целостности:
Обеспечение целостности
Этот параметр устанавливается только в том случае, если соответствующее поле главной таблицы является первичным ключом, связанные поля имеют один и тот же тип данных или обе таблицы содержатся в одной БД
Каскадное обновление связанных полей:
Для автоматического обновления соответствующих значений в связанной таблице при изменении значения ключевого поля в базовой таблице
Каскадное удаление связанных записей:
Для автоматического удаления связанных записей в связанной таблице при удалении записи в базовой таблице
Если оба связываемых атрибута не являются ключевыми, то главной будет таблица, от которой пользователь начинает протягивать связь. В этом случае тип связи не устанавливается.
Если в связываемых таблицах ровно один из двух связываемых атрибутов объявлен ключевым, то главной будет та таблица, к которой относится ключевой атрибут. В этом случае при установлении обеспечения целостности данных получается связь типа «один ко многим».
Если в связываемых таблицах оба связываемых атрибута объявлены ключевыми, то главная таблица назначается пользователем (протягиванием в нужном направлении связи между атрибутами). При установлении обеспечения целостности данных получается связь типа «один к одному»
«Связь, это пара таблиц, в каждой из которых выделено по набору атрибутов, с указанием типа соединения и параметров целостности» А. Г. Гейн
1. Если связь имеет тип «один к одному», то каждая строка главной таблицы связана не более чем с одной строкой подчиненной таблицы и каждая строка подчиненной таблицы связана в точности с одной строкой главной таблицы.
2. Если связь имеет тип «один ко многим», то каждая строка подчиненной таблицы связана в точности с одной строкой главной таблицы, но каждая строка главной таблицы может быть связана с несколькими строками подчиненной таблицы.
Свойство связи
3. Если одной записи в главной таблице могут соответствовать несколько записей связанной таблицы, и наоборот, одной записи в подчиненной таблице могут соответствовать несколько записей главной таблицы, такая запись называется « многие ко многим ». Две таблицы, находящиеся в отношении « многие ко многим » могут быть связаны с помощью третьей (промежуточной) таблицы, в которой присутствуют по одному атрибуту, в точности повторяющие один из атрибутов связанной и главной таблицы. Промежуточная таблица должна быть связана с двумя другими таблицами по данным атрибутам связью « один к одному » или « один ко многим ».
«Форма – это совокупность полей, кнопок и других элементов управления, расположенных на одной или нескольких страницах. Применяется в основном для ввода, отображения, корректировки и поиска данных.» А. Г. Гейн.
Поле – клетка таблицы. Прямоугольник, в котором отображается значение атрибута.
Элемент управления – графический объект, например, поле, флажок, прямоугольник или кнопка, размещаемый пользователем в форме или отчете в режиме конструктора для отображения данных, выполнения макрокоманд или упрощения чтения формы или отчета.