Тема 5. Базы данных. MS ACCESS

База данных – это организованная на машинном носителе совокупность взаимосвязанных данных, она содержит сведения о разных сущностях одной предметной области.

Базы данных, которые организованы в виде нескольких таблиц, называются реляционными.

Для взаимодействия пользователя с базой данных используются СУБД (системы управления БД).

СУБД включает:

Ø набор средств для поддержки таблиц, отношений между ними;

Ø развитый пользовательский интерфейс, который позволяет вводить информацию, выполнять поиск и предоставлять информацию в текстовом или графическом виде:

Ø средства программирования высокого уровня, с помощью которых можно создавать программные продукты для работы с базами данных;

Ø средства для выбора нужных данных;

Ø средства для вывода информации на печать;

Ø средства для выполнения расчетов.

В настоящее время применяется несколько десятков различных СУБД. Среди них можно назвать Microsoft Access, Visual FoxPro, Oracle. Microsoft Access предназначен для создания небольших, некоммерческих приложений.

Существуют объекты базы данных: таблицы, формы, запросы, отчеты, макросы и модули.

Для автоматизации процесса создания отдельных объектов используется специальное диалоговое средство, называемое Конструктор. Конструктор предоставляет пользователю набор инструментов, с помощью которых можно быстро создать и модифицировать таблицу, форму, запрос, отчет.

Существуют Мастерапо созданию объектов баз данных, т.е. специальные диалоговые средства для помощи по выполнению работ. Например, Мастер подстановок, создает в поле таблицы раскрывающийся список значений для выбора и ввода нужного. Для создания поля со списком надо в режиме Конструктора таблицывыбрать тип данных этого поля – Мастер подстановок.

ТАБЛИЦЫ В ACCESS

Таблица – это некоторая структурированная информация, содержащая характеристики объекта или класса объектов. В настоящее время это самый популярный способ хранения информации в электронном виде.

Структура таблицы определяется полями, которые соответствуют столбцам, с указанием типа данных.

Содержание таблицы заключено в ее строках, т.е. записях.

ТИПЫ ПОЛЕЙ

Текстовый. Служит для ввода символьных данных: букв, цифр, знаков пунктуации, других символов длиной не более 256 символов. Такой тип должны иметь, например, поля «Фамилия», «адрес».

Числовой. Используется для ввода целых и вещественных чисел. Например, номер дома, вес и т.д.

Дата/время. Позволяет задать дату и время. Например: дата поступления заявки, дата вызова.

Логический тип. Может принимать одно из двух возможных значений: «истина» или «ложь». «Истина» обозначается галочкой, «ложь» - пустой клеткой. Примеры: наличие оплаты, вступление в профсоюз.

Денежный. Разновидность числового типа данных. Отличается более удобным форматом и значком денежной единицы. Для обозначения рублей используется буква «р», дробная часть содержит две цифры для хранения копеек. Например, цена товара, сумма налогов.

OLE-объект позволяет сохранять рисунки, музыкальные клипы, видеозаписи и т.д.

MEMO-поле – символьное поле длиной до 65535 символов. Данные этого поля не хранятся в таблице, таблица содержит только ссылку на эти данные.

Счетчик – целое значение. Значение счетчика не может повторяться, оно устанавливается автоматически, на единицу больше, чем предыдущее. Его удобно использовать для нумерации записей.

Таблица может быть создана в одном из пяти режимов:

Режим таблицы позволяет изменять имена полей и вводить данные. Тип поля определяется Access автоматически и не всегда правильно. Хорошо работает при занесении символьных и числовых данных. У вас могут возникнуть проблемы при занесении дат, не удается занести логическое значение.

Конструктор позволяет изменять имя, тип, формат поля. В этом режиме невозможно вводить данные.

Мастер таблиц. Вы можете выбрать какие-то поля из таблиц-образцов.

Импорт таблиц. Вы можете скопировать готовую таблицу из какой-либо базы данных.

Связь с таблицей позволяет указать адрес готовой таблицы, с которой вы хотите работать.

Для однозначного определения каждой записи таблица должна иметь уникальный ключ.

Пока не заданы связи между таблицами, надо самостоятельно отслеживать взаимосвязанные записи, поэтому надо отобразить на экране две и более таблиц: Окно/Сверху вниз.Это не очень удобно, поэтому созданы дополнительные возможности: Форма и Схема данных.

Связи между таблицами дают возможность совместно использовать данные из разных таблиц. Связь каждой пары таблиц обеспечивается одинаковыми полями в них – ключом связи. Связи между таблицами в реляционной базе данных могут быть только типа один-к-одному или один-ко-многим. Связывание таблиц позволяет избежать повторения значений данных в разных таблицах и позволяет упростить процесс их обновления.

Схема данных наглядно отображает таблицы и связи между ними, а также обеспечивает использование связей при обработке данных и целостность базы данных.

Рассмотрим пример создания базы данных «Расследование преступлений», содержащую три таблицы: "СЛЕДОВАТЕЛЬ", "ПРЕСТУПЛЕНИЕ», "ЛИЧНЫЕ ДАННЫЕ " следователя.

На рисунке 3 показаны три таблицы: СЛЕДОВАТЕЛЬ, ПРЕСТУПЛЕНИЕ, ЛИЧНЫЕ ДАННЫЕ следователя, которые логически связаны по одинаковому полю Код следователя.

 

Рис.3 Логически связанные таблицы

 

Между таблицами существуют отношения:

"СЛЕДОВАТЕЛЬ", "ПРЕСТУПЛЕНИЕ" – отношения один-ко-многим;

"СЛЕДОВАТЕЛЬ", "ЛИЧНЫЕ ДАННЫЕ " -отношенияодин-к-одному.

Лабораторная работа №8. Создание базы данных и таблиц.

Создайте базу данных «Расследование преступлений», содержащую три таблицы: "СЛЕДОВАТЕЛЬ", "ПРЕСТУПЛЕНИЕ», "ЛИЧНЫЕ ДАННЫЕ " следователя. Организуйте связи между ними.

Порядок выполнения данного задания

1. Загрузите Access.

2. На вкладке Приступая к работевыберите Создать файл, затем Новая база данных. В окне Файл новой базы данныхвыберите нужную папку и введите имя базы данных. В нашем случае "Расследование преступлений".

3. Приступим к созданию таблиц. Создадим таблицу ЛИЧНЫЕ ДАННЫЕ в режиме Конструктора.

На вкладке Объектывыберите Таблицы и Создание таблицы в режиме конструктора.

4. Задайте имена (вводятся с клавиатуры) и типы полей (выбираются из раскрывающегося списка).

5. Используя Мастер подстановокдля поля семейное положение создадим раскрывающийся список значений. Для этого при определении типа поля семейное положениевыберем Мастер подстановок и будем следовать его указаниям.

6. Сделайте поле Код следователяключевым: щелкнуть правой кнопкой по полю Код следователяи выбрать ключевое поле или выбрать значок ключа на панели инструментов.

7. Сохраните таблицуЛИЧНЫЕ ДАННЫЕ, используя Файл/Сохранить в окне СохранениезаписываемЛИЧНЫЕ ДАННЫЕ.В окне базы данных появилась новая таблицаЛИЧНЫЕ ДАННЫЕ.

8. Самостоятельно создайте таблицу ПРЕСТУПЛЕНИЕв режиме Конструктора, ключевым сделайте поле№ УД.

9. Создайте таблицу СЛЕДОВАТЕЛЬв режиме Таблица. На вкладке Таблица в основном окне базы данных выберите Создание таблицы путем ввода данных.После появления пустой таблицы, дважды щелкните на Поле1, текст в поле будет выделен, введите Код следователя, в поле2 – введите ФИО и т.д. Отрегулируйте ширину столбцов: подведите мышь к вертикальной черте между названиями полей, увидев двунаправленную стрелку, зажмите левую кнопку мыши и не отпуская, передвиньте на нужное расстояние. Введите несколько записей.

10. Перейдите в режим Конструктора таблицы, используя кнопку , задайте ключевое поле Код следователя. Используя Мастер подстановок, для полей Звание и РУВД,создайте раскрывающийся список значений. Проверьте тип созданных полей. Поле Код следователя должно иметь тот же тип, что и в таблице ЛИЧНЫЕ ДАННЫЕ.

11. Сохраните таблицу, задав имя СЛЕДОВАТЕЛЬ.

12. В итоге вы должны получить 3 таблицы

13. Занесите по несколько строк данных в таблицы, отслеживая взаимосвязанные записи. Для этого надо отобразить на экране две и более таблиц, используя Окно/Сверху вниз.

14. В таблицеЛИЧНЫЕ ДАННЫЕдля добавления фотографии используйте Вставка/Объект, в появившемся окне выберите Создать из файла.Выберите файл с расширением BMP.

Рисунок отобразится только в форме или отчете, в таблице в поле фотобудет указан вид объекта Точечный рисунок BMP.

15. Установим отношения между таблицами. Для этого выберем Сервис/Схема данных. На экране появилось окно Схема данных,в этом окне в контекстном меню выбираем Добавить таблицу. Добавьте все таблицы в окно Схема данных.

16. Установим отношения между таблицами СЛЕДОВАТЕЛЬи ПРЕСТУПЛЕНИЕ, поле связиКод следователя.Для этого установите указатель в поле Код следователя (таблицаСЛЕДОВАТЕЛЬ)и, удерживая левую кнопку мыши нажатой, перетащите указатель в полеКод следователя (таблицаПРЕСТУПЛЕНИЕ).Появится окно Изменение связей, которое представлено на рис.4.

Рис.4 Окно изменения связей

Установите флажки в Обеспечение целостности данных, Каскадное обновление связанных полей, Каскадное удаление связанных полей и щелкните по кнопке Создать.

17. Аналогично создать отношения между таблицами СЛЕДОВАТЕЛЬиЛИЧНЫЕ ДАННЫЕ по полю Код следователя.В результате схема данных имеет следующий вид см рис.5

 

Рис. 5 Схема данных.

18. Закройте схему данных и Access.