Базы данных (Access)
Базы данных (Access)
БД и СУБД
БД и СУБД
Классификация ИС
Файл-серверные СУБД
Клиент-серверные СУБД
Распределённая база данных
Базы данных (Access)
Таблицы
Ключ
Ключ
Суррогатный ключ
Целостность БД
Какие ошибки?
Базы данных (Access)
Базы данных в Microsoft Access
Базы данных
Поиск и сортировка
Задача
Фильтрация
Фильтр по форме (операция «И»)
Расширенный фильтр
Задача
Задача
Однотабличная БД
Создание базы данных
Типы полей
Свойства полей
Операции с таблицами
Базы данных (Access)
Что такое запрос?
Конструктор запросов
Конструктор запросов
Режим SQL
Сортировка
Запуск запроса
Изменение запроса
Условия отбора
Сложные условия
Сложные условия
Запросы с параметрами
Вычисляемые поля
Базы данных (Access)
Однотабличная БД
Многотабличная БД
Многотабличная БД
Ссылочная целостность
Типы связей между таблицами
Создание многотабличной БД
Создание многотабличной БД
Создание многотабличной БД
Запрос (объединение данных)
Запрос (объединение данных)
Итоговый запрос
Конец фильма
Источники иллюстраций
2.26M
Категория: Базы данныхБазы данных

Базы данных (Access)

1. Базы данных (Access)

1
Базы данных
(Access)
§ 30. Информационные системы
§ 31. Таблицы
§ 32. Работа с базой данных
§ 33. Запросы
§ 34. Многотабличные Базы данных
(Access)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

2. Базы данных (Access)

2
Базы данных
(Access)
§ 30. Информационные системы
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

3. БД и СУБД

Базы данных (Access), 9 класс
3
БД и СУБД
База данных (БД) — это специальным образом
организованная совокупность данных о некоторой
предметной области, хранящаяся во внешней памяти
компьютера.
Система управления базой данных (СУБД) — это
программные средства, которые позволяют выполнять
все необходимые операции с базой данных.
БД + СУБД = информационная система
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

4. БД и СУБД

Базы данных (Access), 9 класс
4
БД и СУБД
Задачи СУБД:
• поиск данных
• редактирование данных
• выполнение несложных расчетов
• обеспечение целостности (корректности,
непротиворечивости) данных
• восстановление данных после сбоев
прикладная
программа
СУБД
БД
OpenOffice Base
Microsoft Access
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

5. Классификация ИС

Базы данных (Access), 9 класс
5
Классификация ИС
ИС
локальные
удалённые
БД и СУБД на компьютере
пользователя
БД на удалённом компьютере
(в сети)
автономность
все работают с одной БД
нужно обновлять БД на
каждом компьютере
как учесть изменения,
внесённые пользователями
зависимость от сети
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

6. Файл-серверные СУБД

Базы данных (Access), 9 класс
6
Файл-серверные СУБД
рабочие станции
сервер
СУБД
БД
СУБД
рабочие станции должны быть мощными
высокая нагрузка на сеть
слабая защита данных
ненадежность при большом количестве
пользователей
! Решение – перенести СУБД на сервер!
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

7. Клиент-серверные СУБД

Базы данных (Access), 9 класс
7
Клиент-серверные СУБД
рабочие станции (клиенты)
запрос
прикладная
программа
ответ
сервер
СУБД
БД
прикладная
программа
Задачи клиента:
Задачи сервера:
• отправить серверу
• при получении запроса
запрос на языке SQL
поставить его в очередь
• принять ответ сервера • выполнить запрос
• вывести результаты
• отправить ответ клиенту
SQL = Structured Query Language – язык структурных
запросов для управления данными
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

8. Распределённая база данных

Базы данных (Access), 9 класс
8
Распределённая база данных
сервер – 1
БД
СУБД
сервер – 2
БД
сервер – 3
СУБД
сеть
СУБД
БД
сервер – 4
СУБД
БД
рабочая станция
(клиент)
пользователя распределённая
! Для
система должна выглядеть точно так
же, как нераспределённая.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

9. Базы данных (Access)

9
Базы данных
(Access)
§ 31. Таблицы
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

10. Таблицы

Базы данных (Access), 9 класс
10
Таблицы
Примеры:
• записная книжка
• каталог в библиотеке
Иванов Пётр
Суворовский пр., д. 32, кв. 11
275-75-75
поля
записи
Фамилия
Иванов
Петров
Васильев
Имя
Петр
Василий
Иван
Типы полей:
• целые числа
• вещественные числа
• денежные суммы
• логические значения
• текстовые данные
К.Ю. Поляков, Е.А. Ерёмин, 2018
Адрес
Суворовский пр., д. 32, кв. 11
Кутузовский пр., д. 12, кв. 20
Нахимовский пр., д. 23, кв. 33
Телефон
275-75-75
276-76-76
277-77-77
• время, дата
• произвольные двоичные
данные (рисунки, звук, видео)
http://kpolyakov.spb.ru

11. Ключ

Базы данных (Access), 9 класс
11
Ключ
Ключ – это поле или комбинация полей, однозначно
определяющие запись.
Могут ли эти данные быть ключом?
• фамилия
Может ли быть несколько
• имя
ключей в таблице?
• номер паспорта
• номер дома
• регистрационный номер автомобиля
• город проживания
• адрес электронной почты
• дата выполнения работы
• марка стиральной машины ?
?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

12. Ключ

Базы данных (Access), 9 класс
12
Ключ
Первичный ключ – это ключ, выбранный в качестве
основного.
Простой ключ – состоит из одного поля.
Составной ключ – состоит из нескольких полей.
Дата
Время
Температура
Влажность
Скорость ветра
21.07.2012
12:00
25
75
4
21.07.2012
15:00
23
70
3





? Какой ключ?
Составной ключ Дата + Время
Свойства ключа:
• уникальность
• несократимость (Дата + Время + Влажность)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

13. Суррогатный ключ

Базы данных (Access), 9 класс
13
Суррогатный ключ
Номер
1
2
3
Фамилия
Иванов
Петров
Васильев
Имя
Петр
Василий
Иван
Адрес
Суворовский пр., д. 32, кв. 11
Кутузовский пр., д. 12, кв. 20
Нахимовский пр., д. 23, кв. 33
? Какой ключ?
Телефон
275-75-75
276-76-76
277-77-77
Суррогатный ключ – это дополнительное поле, которое
служит первичным ключом.
операции с числами выполняются быстрее
уникальность поддерживается СУБД (поле-счётчик)
? В чём недостатки?
хранятся лишние данные
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

14. Целостность БД

Базы данных (Access), 9 класс
14
Целостность БД
Целостность базы данных означает, что она содержит
полную и непротиворечивую информацию и
удовлетворяет всем заданным ограничениям.
Физическая целостность – сохранность данных в
случае отказа оборудования:
• резервное копирование
• RAID-массивы жёстких дисков (дублирование)
Логическая целостность – непротиворечивость:
• типы полей
• обязательные поля
• уникальные поля
• ограничения на значения
• шаблоны ввода (###) ###-##-##
• условия (дата увольнения позже приёма)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

15. Какие ошибки?

Базы данных (Access), 9 класс
15
Какие ошибки?
неверное
значение
Код
1327
1323
1327
1329
уволен раньше,
чем принят
Фамилия Год рожд. Принят
Уволен
Телефон
Иванов
1811
01.03.2011
(911) 123-45-67
Петров
1977
12.10.2014 13.05.2014 (921) 223-45-67
Сидоров
0
28.09.2015 323-45-67 (913)
Тяпкин
1989
да
iPhone
неверное
значение
нет
значения
неверная
дата
неверный
номер
? Как не допустить?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

16. Базы данных (Access)

16
Базы данных
(Access)
§ 32. Работа с базой данных
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

17. Базы данных в Microsoft Access

Базы данных (Access), 9 класс
17
Базы данных в Microsoft Access
Файлы *.accdb, *.mdb
• таблицы с данными
• формы – диалоговые окна, с помощью которых
пользователь вводит и изменяет данные
• запросы – команды по управлению данными
• отчеты – шаблоны документов для вывода на печать
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

18. Базы данных

(Access), 9 класс
18
Базы данных
2×ЛКМ
переходы по
записям
общее
количество
новая
запись
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

19. Поиск и сортировка

Базы данных (Access), 9 класс
19
Поиск и сортировка
Ctrl+F
сортировка по текущему столбцу
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

20. Задача

Базы данных (Access), 9 класс
20
Задача
Фамилия
Пол
Математика
Русский
язык
Химия ИнформаБиология
тика
Сомов
м
75
65
70
90
58
Кротов
м
83
75
59
87
60
Белочкина ж
55
92
64
65
86
Окунев
м
75
68
72
70
56
Судакова
ж
68
70
56
58
60
Щукина
ж
76
58
78
80
85
Какой по счету будет запись с фамилией Белочкина,
если отсортировать таблицу по полю:
а) Фамилия (по алфавиту)
б) Математика (по убыванию)
в) Русский язык (по убыванию)
г) Химия (по возрастанию)
д) Информатика (по возрастанию)
е) Биология (по убыванию)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

21. Фильтрация

Базы данных (Access), 9 класс
21
Фильтрация
Фильтр – это условие для отбора записей.
! Остальные записи временно скрываются!
Быстрый фильтр (фильтр по выделенному)
применить/отменить фильтр
с таблицей хранится только один фильтр
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

22. Фильтр по форме (операция «И»)

Базы данных (Access), 9 класс
22
Фильтр по форме (операция «И»)
«И»
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

23. Расширенный фильтр

Базы данных (Access), 9 класс
23
Расширенный фильтр
«ИЛИ»
К.Ю. Поляков, Е.А. Ерёмин, 2018
все классы
http://kpolyakov.spb.ru

24. Задача

Базы данных (Access), 9 класс
24
Задача
В чём разница между фильтрами:
а) Предмет = 'Математика' AND Класс = 2
OR Год издания > 2009
б) Предмет = 'Математика' OR Класс = 2
AND Год издания > 2009
в) Предмет = 'Математика' OR Год издания > 2009
AND Класс = 2
г) Предмет = 'Математика' AND Год издания > 2009
OR Класс = 2
? Какие фильтры дают одинаковый результат?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

25. Задача

Базы данных (Access), 9 класс
25
Задача
Фамилия
Пол
Математика
Русский
язык
Сомов
Кротов
Белочкина
Окунев
Судакова
Щукина
м
м
ж
м
ж
ж
75
83
55
75
68
76
65
75
92
68
70
58
Химия ИнформаБиология
тика
70
59
64
72
56
78
90
87
65
70
58
80
58
60
86
56
60
85
?
а)Пол = 'ж' AND Химия > Биология
Сколько?
б)Пол = 'ж' OR Химия > Биология
в)Пол = 'м' AND Математика > Информатика
г)Пол = 'м' OR Математика > Информатика
д)Пол = 'ж' AND Русский язык > 70 OR Информатика > 80
е)Пол = 'ж' OR Русский язык > 70 AND Информатика > 80
ж)Пол = 'м' AND Информатика > 80 OR Русский язык > 60
з)Пол = 'м' OR Информатика > 80 AND Русский язык > 60
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

26. Однотабличная БД

Базы данных (Access), 9 класс
26
Однотабличная БД
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

27. Создание базы данных

Базы данных (Access), 9 класс
27
Создание базы данных
ключ
текущее
поле
свойства
текущего
поля
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

28. Типы полей

Базы данных (Access), 9 класс
28
Типы полей
? Зачем нужны типы полей?
• Текст [VARCHAR]
• Памятка [LONGVARCHAR]
Зачем?
?
• Целое [INTEGER]
• Десятичное [DECIMAL] (денежная сумма)
• Вещественное [REAL]
• Картинка [LONGVARBINARY]
• Логическое [BOOLEAN]
• Дата [DATE];
• Время [TIME];
• Дата/Время [TIMESTAMP].
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

29. Свойства полей

Базы данных (Access), 9 класс
29
Свойства полей
• максимальный размер для текста
• количество знаков в дробной части
• значение по умолчанию
• подпись (на экране)
• обязательное (да/нет)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

30. Операции с таблицами

Базы данных (Access), 9 класс
30
Операции с таблицами
изменить данные в
таблице
изменить структуру
таблицы
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

31. Базы данных (Access)

31
Базы данных
(Access)
§ 33. Запросы
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

32. Что такое запрос?

Базы данных (Access), 9 класс
32
Что такое запрос?
Запрос – это обращение к СУБД для отбора записей или
выполнения других операций с данными.
• выборка данных
• создание таблиц
• редактирование таблиц и записей
• изменение записей
• удаление записей
• удаление таблиц
SQL (англ. Structured Query Language – язык
структурных запросов).
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

33. Конструктор запросов

Базы данных (Access), 9 класс
33
Конструктор запросов
ЛКМ
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

34. Конструктор запросов

Базы данных (Access), 9 класс
34
Конструктор запросов
все поля
перетащить ЛКМ
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

35. Режим SQL

Базы данных (Access), 9 класс
35
Режим SQL
выбрать
из таблицы
Футбол
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

36. Сортировка

Базы данных (Access), 9 класс
36
Сортировка
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

37. Запуск запроса

Базы данных (Access), 9 класс
37
Запуск запроса
2×ЛКМ
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

38. Изменение запроса

Базы данных (Access), 9 класс
38
Изменение запроса
ПКМ
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

39. Условия отбора

Базы данных (Access), 9 класс
39
Условия отбора
Условие
отбора
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

40. Сложные условия

Базы данных (Access), 9 класс
40
Сложные условия
И
AND
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

41. Сложные условия

Базы данных (Access), 9 класс
41
Сложные условия
OR
ИЛИ
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

42. Запросы с параметрами

Базы данных (Access), 9 класс
42
Запросы с параметрами
Параметры – это данные, которые пользователь вводит
при выполнении запроса.
параметр
15000
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

43. Вычисляемые поля

Базы данных (Access), 9 класс
43
Вычисляемые поля
Очки = Ничьи + 3*Победы
Очки: Ничьи + 3*Победы
? Как отсортировать по убыванию очков?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

44. Базы данных (Access)

44
Базы данных
(Access)
§ 34. Многотабличные Базы
данных (Access)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

45. Однотабличная БД

Базы данных (Access), 9 класс
45
Однотабличная БД
Альбомы
Код
Название
1
Хиты про любовь
2
Группа
Год
Число композиций
Браво
1998
13
Мода
Браво
2011
12
3
Вне зоны доступа
Город 312
2006
16
4
Новая музыка
Город 312
2010
18
? Что плохо?
дублирование данных
при изменении каких-то данных, возможно,
придется менять несколько записей
нет защиты от ошибок ввода (опечаток)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

46. Многотабличная БД

Базы данных (Access), 9 класс
46
Многотабличная БД
Группы
Код
Название
Год создания
1 Браво
1983
2 Город312
2001
Код
Название
1 Хиты про любовь
2 Мода
3 Вне зоны доступа
4 Новая музыка
Альбомы
Код группы Год
Число композиций
1
1998
13
1
2011
12
2
2006
16
2
2010
18
? Что улучшилось?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

47. Многотабличная БД

Базы данных (Access), 9 класс
47
Многотабличная БД
Группы
Альбомы
Код
Название
Год создания
Код
Название
Код группы
Год
Число композиций
Внешний ключ – это неключевое поле таблицы,
связанное с первичным ключом другой таблицы.
убрано дублирование
изменения нужно делать в одном месте
некоторая защита от опечаток (выбор из списка)
усложнение структуры (> 40-50 таблиц – много!)
при поиске нужно «собирать» данные разных таблиц
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

48. Ссылочная целостность

Базы данных (Access), 9 класс
48
Ссылочная целостность
? Удаление группы: что делать с альбомами?
СУБД:
• запретить удаление записи
• выполнить каскадное удаление (удалить все
связанные с ней записи в других таблицах)
• разрешить внести изменения
нарушится ссылочная
целостность!
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

49. Типы связей между таблицами

Базы данных (Access), 9 класс
49
Типы связей между таблицами
ключ
Группы
Код
Название
Год создания
1
Альбомы
Код
Название
Код группы
N
Год
не ключ Число композиций
Связь 1:N – с одной записью в первой таблице могут
быть связаны сколько угодно записей во второй
таблице.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

50. Создание многотабличной БД

Базы данных (Access), 9 класс
50
Создание многотабличной БД
Создать две таблицы:
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

51. Создание многотабличной БД

Базы данных (Access), 9 класс
51
Создание многотабличной БД
добавить в рабочую область обе таблицы:
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

52. Создание многотабличной БД

Базы данных (Access), 9 класс
52
Создание многотабличной БД
Установить связь между таблицами:
– ЛКМ
+ЛКМ
!
? Почему ?
Перетащить ЛКМ одно поле на другое!
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

53. Запрос (объединение данных)

Базы данных (Access), 9 класс
53
Запрос (объединение данных)
Название
Группа
Год
Число композиций
Хиты про любовь
Браво
1998
13
Мода
Браво
2011
12
Вне зоны доступа
Город 312
2006
16
Новая музыка
Город 312
2010
18
Альбомы
К.Ю. Поляков, Е.А. Ерёмин, 2018
Группы
Альбомы
http://kpolyakov.spb.ru

54. Запрос (объединение данных)

Базы данных (Access), 9 класс
54
Запрос (объединение данных)
ЛКМ
Альбом
Группа
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

55. Итоговый запрос

Базы данных (Access), 9 класс
55
Итоговый запрос
Группа
Браво
Город 312
Альбомов
2
2
!
Общее число композиций
25
34
Эти данные вычисляются!
Группировка Count
Группировка по
каждой группе
К.Ю. Поляков, Е.А. Ерёмин, 2018
Количество
Sum
Сумма
http://kpolyakov.spb.ru

56. Конец фильма

Базы данных (Access), 9 класс
56
Конец фильма
ПОЛЯКОВ Константин Юрьевич
д.т.н., учитель информатики
ГБОУ СОШ № 163, г. Санкт-Петербург
[email protected]
ЕРЕМИН Евгений Александрович
к.ф.-м.н., доцент кафедры мультимедийной
дидактики и ИТО ПГГПУ, г. Пермь
[email protected]
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

57. Источники иллюстраций

Базы данных (Access), 9 класс
57
Источники иллюстраций
1.
2.
иллюстрации художников издательства «Бином»
авторские материалы
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
English     Русский Правила