- •Содержание
- •Введение
- •1 Организация систем управления базами данных
- •1.1 Базы данных и системы управления базами данных
- •1.2 Модели данных
- •1.3 Реляционная база данных
- •1.4 Связи между таблицами
- •1.4 Манипулирование реляционными данными
- •2 Объекты базы данных ms access
- •2.1 Таблицы
- •2.2 Запросы
- •2.3 Формы
- •2.4 Отчеты
- •2.5 Макросы
- •2.6 Модули
- •2.7 Web-страницы
- •2.8 Sql – запросы
- •2.8.1 Структура языка sql
- •Dcd (Data Control Language) – язык управления данными состоит из операторов контроля данных, защиты и управления данными:
- •2.8.2 Выборка данных из таблиц
- •2.8.3 Операторы sql
- •3 Лабораторный практикум
- •3.1 Применение кейс-метода при создании реляционной базы данных ms access
- •1. Кейс-компонент Открытие бд
- •2. Кейс-компонент Закрытие бд
- •3. Кейс-компонент Создание бд
- •4. Кейс-компонент Создание таблиц
- •5. Кейс-компонент Формирование связей между таблицами
- •6. Кейс-компонент Создание форм
- •7. Кейс-компонент Ввод данных
- •8. Кейс-компонент Организация данных
- •9. Кейс-компонент Создание запросов
- •10. Кейс-компонент Представление информации
- •11. Кейс-компонент Изменение структуры объектов бд
- •12. Кейс-компонент Импорт данных
- •3.2 Иллюстративные учебные кейсы
- •1. Работа с субд Microsoft Access на примере бд «Борей»
- •Задания и алгоритм реализации кейс-ситуации
- •Задания для самостоятельной работы
- •2. Создание однотабличной бд и работа с ней в различных режимах
- •Задания и алгоритм реализации кейс-ситуации
- •3. Создание и работа по запросам с двухтабличной бд «Авто»
- •Задания и алгоритм реализации кейс-ситуации
- •4. Разработка составной формы на основе двух таблиц для бд «Авто»
- •Задания и алгоритм реализации кейс-ситуации
- •Задания и алгоритм реализации кейс-ситуации
- •6. Создание структуры реляционной бд торговой фирмы
- •Задания и алгоритм реализации кейс-ситуации
- •7. Редактирование и обработка данных. Формирование сложных запросов
- •8. Создание форм для работы с данными. Разработка кнопочной формы
- •Задания и алгоритм реализации кейс-ситуации
- •9. Формирование отчетов и почтовых наклеек
- •Задания и алгоритм реализации кейс-ситуации
- •10. Интеграция баз данных ms Access и SharePoint
- •Задания и алгоритм реализации кейс-ситуации
- •3.3 Учебные кейсы. Создание запросов к бд «Фирма» с использованием языка sql
- •1. Создание простых запросов
- •2. Получение обобщенных данных для формирования отчетов и создание запросов с данными из нескольких таблиц и подзапросами
- •3. Создание объединения запросов и запросов с соотнесенными подзапросами для учебной и индивидуальной бд
- •4. Создание запросов на модификацию данных
- •1. Гостиница
- •2. Прокат спортивного оборудования
- •3. Платный абонемент
- •4. Подписка
- •5. Реклама в газете
- •6. Справочная сети аптек
- •7. Фирма добрых услуг
- •8. Продажа музыкальных альбомов
- •9. Транспортные перевозки
- •10. Ремонт компьютеров
- •Лебедева Татьяна Фёдоровна солопова Алла Николаевна
- •650942, Г. Кемерово, пр. Кузнецкий, 39. Тел. 75-75-00
1.2 Модели данных
Структура данных объектов современного предприятия обладает относительной устойчивостью, так как типы объектов, если и изменяются во времени, то достаточно редко. Поэтому возможно построение информационной базы в виде модели с постоянной логической структурой и изменяемыми значениями данных.
Модель БД представляет формирование логических записей в виде совокупности элементов данных и взаимосвязей между записями.
Взаимосвязи могут быть типизированы по основным видам:
«один к одному», когда одна запись может быть связана только с одной записью;
«один ко многим», когда одна запись взаимосвязана со многими другими;
«многие ко многим», когда одна и та же запись может входить в отношения со многими другими записями в различных вариантах.
По виду взаимосвязей определяются основные модели баз данных: иерархическая, сетевая, реляционная, объектно-ориентированная.
В иерархической модели данные представляются в виде древовидной (иерархической) структуры (рисунок 1).
Объекты, связанные иерархическими отношениями, образует ориентированный граф (перевернутое дерево). К основным понятиям иерархической структуры относятся: уровень, узел, связь.
Узел – это совокупность атрибутов данных, описывающих некоторый объект. Каждый узел более низкого уровня связан только с одним узлом, более высокого уровня. Иерархическое дерево имеет только одну вершину (корень дерева), не подчиненную никакой другой вершине. Узлы, не имеющие выходных стрелок, носят название листьев. Узел интегрируется как запись. Для поиска необходимой записи нужно двигаться от корня к листьям, т.е. сверху вниз.
Рисунок 1 – Иерархическая модель БД
Эта модель удобна для работы с иерархически упорядоченной информацией и громоздка для работы со сложными логическими связями.
Сетевая модель представляет данные в виде произвольного графа (рисунок 2). В сетевой структуре при тех же основных понятиях (уровень, узел, связь) каждый узел может быть связан с любым другим узлом. В сетевой модели данных каждый элемент может иметь более одного порождающего элемента, а графическое представление модели очень напоминает сеть. Она допускает усложнение «дерева» без ограничения количества связей, входящих в его вершину. Недостатком сетевой модели данных является высокая сложность и жесткость схемы БД, построенной на ее основе.
В иерархических и сетевых БД наборы элементов данных и структура записей создаются изначально, а изменение структуры обычно означает перестройку всей базы. Кроме того, для реализации пользовательских запросов программист должен выполнить программу навигации по базе данных, и к моменту появления запрошенной информации она часто оказывается бесполезной.
Рисунок 2 – Сетевая модель БД
Эдгар Франк Кодд в 60-х – 70-х годах XX века работал в компании IBM над концепциями хранения данных. Его труды заложили основы теории реляционных БД, оказали широкое влияние на технологию БД во всех ее аспектах, а также на другие области информационных технологий (например, искусственный интеллект и обработку текстов на естественных языках).
В 2002 журнал Forbes поместил реляционную модель данных в список важнейших инноваций последних 85 лет.
Реляционная модель получила название от английского термина relation – отношение.
Отношение представляется в виде двумерной таблицы разбитой на строки и столбцы, на пересечении которых находятся элементарные значения. Про такое отношение говорят, что оно находится в первой нормальной форме. Каждая таблица имеет уникальное имя, описывающее ее содержание. Эта модель характеризуется простотой структуры данных, удобным для пользователя табличным представлением, возможностью использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных, гибкостью системы защиты (для каждого отношения может быть задана правомерность доступа).
Примером упрощенной реляционной модели может служить таблица Сотрудники (таблица 1), где одна строка (запись) – сведения об одном из сотрудников.
Таблица 1 – Отношение Сотрудники
Код |
ФИО |
Дата Рождения |
Таб Номер |
Должность |
Оклад |
1 |
Иванов А.М. |
10.12.70 |
1230 |
Директор |
4500 |
2 |
Сидоров О.П. |
04.05.77 |
1240 |
Менеджер по продажам |
4000 |
3 |
Петров Н.И. |
08.11.75 |
1250 |
Менеджер по закупкам |
3500 |
При работе с реляционными моделями используется как математическая терминология, так и терминология, исторически принятая в сфере обработки данных:
Формальный реляционный термин |
Неформальный эквивалент |
Отношение |
Таблица |
Кортеж |
Запись, строка |
Атрибут |
Поле, столбец |
Домен |
Множество значений |
Ключ |
Средство связи отношений |
Запись – это совокупность значений связанных элементов данных, хранящая информацию об одном экземпляре объекта данных. Экземпляр записи – это отдельная строка таблицы, содержащая конкретные значения ее полей. Наличие одинаковых записей в таблице не допускается.
Поле (столбец) – элементарная и неделимая единица логической организации данных. Каждое поле таблицы имеет уникальное имя, при этом каждое из полей однородно, т. е. данные в нем имеют одинаковые тип и длину. Для описания поля используют имя и тип данных.
Поле, значение которого однозначно определяет соответствующую запись, называется ключевым полем, например, поле Код в таблице 1. Данное ключевое поле имеет тип Счётчик с автоматическим изменением значения на единицу при переходе к следующей записи
Таблица базы данных – это совокупность экземпляров записей одной структуры. Описание структуры базы данных содержит перечень полей записи и их основные характеристики.
Преобладание реляционной модели в современных СУБД обусловлено рядом причин, в числе которых:
наличие развитой теории реляционных БД;
наличие аппарата приведения любой модели данных к реляционной;
поддержка реляционной моделью специальных средств ускоренного доступа к информации;
возможность манипулирования данными без необходимости знания конкретной физической организации БД во внешней памяти;
наличие стандартизованного высокоуровневого языка запросов к БД – SQL.
Объектно-ориентированная модель объединяет в себе реляционную и сетевую модели БД.
В объектно-ориентированной БД данные оформлены в виде моделей объектов, включающих прикладные программы, которые управляются внешними событиями. Результатом совмещения возможностей (особенностей) БД и возможностей объектно-ориентированных языков программирования (ООЯП) являются Объектно-ориентированные системы управления базами данных (ООСУБД). ООСУБД позволяет работать с объектами баз данных так же, как с объектами в программировании на ООЯП. ООСУБД расширяет языки программирования, вводя долговременные данные, управление параллелизмом, восстановление данных, ассоциированные запросы и другие возможности.
Одни объектно-ориентированные БД разработаны для взаимодействия с такими ООЯП как Python, Java, C#, Visual Basic .NET, C++, Objective-C и Smalltalk, а другие имеют свои собственные языки программирования.