Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТОДИЧКА ОБД Ч1.doc
Скачиваний:
3
Добавлен:
19.11.2019
Размер:
3.23 Mб
Скачать
  1. Задания на лабораторные работы Лабораторная работа №1

Тема: Создание базы данных при помощи СУБД Microsoft Access 2003.

Цель: изучение средств MS Access 2003 для разработки базы данных, ввода и обработки данных стандартными средствами MS Access.

Теоретические сведения

БАЗА ДАННЫХ (БД) [data base (DB)] — совокупность виртуально взаимосвязанных данных, используемая одним из видов приложений и хранимая с регулируемой избыточностью. БД подразумевает средства и методы описания таблиц, хранения и обработки данных в таблицах, облегчающие их сбор, накопление, выдачу и массовое использование.

Для представления данных в ЭВМ используют определенную модель представления данных. МОДЕЛЬ ДАННЫХ [data model] — логическая структура данных со свойствами, не зависящими от аппаратуры и программного обеспечения; М.д. может быть представлена схемами, структурами, в некотором формате и др. способами. Среди моделей баз данных общеизвестны такие: иерархическая, сетевая, реляционная.

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

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

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

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

Создание новой базы данных при помощи СУБД MS Access 2003 начинается с запуска Microsoft Access 2003 (Пуск  Программы  Microsoft Office 2003) и выполнения команды Файл  Создать… (Ctrl+N). При этом в правой части главного окна появится панель «Создание файла» (рис.1.1).

Рисунок 1.1 Панель создания файла БД

В результате щелчка на ярлыке «Новая база данных…» появится диалоговое окно «Файл новой базы данных», где при помощи проводника следует указать путь для размещения файла базы данных на жестком диске и ввести имя файла. В аудитории рекомендуемый каталог для сохранения БД — «D:\Студенты\1СКС07\ОБД\…». После подтверждения создания на экране появится окно базы данных (рисунок 1.2).

Рисунок 1.2 Окно базы данных

Объекты БД. Access ориентирован на работу с объектами, к которым относятся таблицы базы данных, запросы, а также объекты приложений для работы с базой данных: формы, отчеты, страницы, макросы и модули. Все объекты представлены в окне базы данных Access. Все операции по работе с объектами базы данных и приложений, т.е. все действия пользователя направлены на изменение содержимого БД, при проектировании БД, непременно начинаются с данного окна. Теперь, рассмотрим детальней перечисленные объекты. Ниже приводиться не определения тех или иных понятий, а только описание объектов MS Access 2003.

Таблицы - создаются пользователем для хранения данных о каком-либо одном объекте модели данных некоторой предметной области. Таблица состоит из полей и записей. Каждое поле содержит одну характеристику объекта предметной области. В записи собраны сведения об одном экземпляре объекта.

Запросы - создаются пользователем для выборки нужных данных из одной или нескольких связанных таблиц. Результатом выполнения запроса является таблица, которая может быть использована наряду с другими таблицами БД при обработке данных. Запрос может формироваться в варианте QueryByExample (запрос по образцу), при помощи конструктора запросив или с помощью языка SQL (StructuredQueryLanguage – язык структурированных запросов). Кроме того, с помощью запросов можно также управлять строением БД, к примеру - создавать новые таблицы, на основе уже существующих, модифицировать данные в таблицай и т.д.

Формы - основное средство для создания диалогового интерфейса приложения с пользователем. Форма, к примеру, может создаваться для ввода и просмотра взаимосвязанных данных базы на экране в удобном виде.

Отчеты - предназначены для формирования выходных документов, содержащих, к примеру, результаты решения задач пользователя для дальнейшего вывода их на печать.

Страницы - Web-страницы, поддерживающие связь с базой данных и позволяющие просматривать, редактировать и вводить данные в БД, работая в окне браузера.

Макросы - программы, которые содержат описание последовательности действий, выполняемых при наступлении некоторого события в объекте или элементе управления приложения. Каждое действие реализуется макрокомандой.

Модули - содержат процедуры записанные на языке Visual Basic for Application (VBA). К примеру, при необходимости создания процедуры обработку записей, выполняемую перед физическим размещением их в БД, требуется написать свою процедуру на языке VBA (размещенную в модуле модуле) для выполнения указанной задачи.

Также, в окне базы данных Access 2003, наряду со списком созданных объектов представлены ярлыки для быстрого запуска мастеров или конструкторов создания нового объекта.

В качестве примера рассмотрим создание базы данных «АТП» (см. задание на лабораторную работу). Для создания таблицы будем использовать ярлык окна базы данных «Создание таблицы в режиме конструктора» (ярлык выделен на рисунке 1.2). Этот вариант создания таблицы удобен, прост в общении и, что в Access немаловажно, дает полный контроль над полями создаваемой таблицы. В результате щелчка на этом ярлыке появится окно конструктора таблицы.

Рисунок 1.3 Конструктор таблицы ПУНКТЫ_НАЗНАЧЕНИЯ

В верхней части окна существует три столбца: Имя поля (наименование поля таблицы), Тип данных (тип данных, которое с которыми данное поле будет работать) и Описание (обычно объяснение, для чего данное поле предназначено).

В нижней части окна, представлены свойства данного поля в виде двух закладок: Общие (позволяет настроить данное поле, к примеру для Текстового типа данных указать его размер, для Дата/время - формат работы с датой) и Подстановка (позволяет ассоциировать данное поле с некоторым элементом управления, который будет использован при создании формы таблицы).

Типы данных. В Access допускается использование девяти типов данных. Рассмотрим эти типы.

Текстовый - тип данных по умолчанию. Текст или цифры, не участвующие в расчетах. Число символов в поле не должно превышать 255. Максимальное число символов, которое можно ввести в поле, задается в свойстве Размер поля. Пустые символы в неиспользуемой части поля не сохраняются.

Поле МЕМО - длительный текст, например некоторое описание или примечание. Максимальная длина 64 000 символов.

Числовой - числовые данные, используемые в математических вычислениях. Конкретные варианты числового типа и их длина задаются в свойстве Размер поля.

Денежный - для проведения денежных расчетов определен тип данных Денежный. Денежные значение и числовые данные. используемый в расчетах, проводящихся с точностью 15 знаков в целой и до 4 знаков в дробной части. Длина поля 8 байт. При обработке числовых значений из денежных полей выполняются вычисления с фиксированной точкой более быстрые, чем вычисления для полей с плавающей точкой, кроме того, при вычислениях предотвращается округление. Учитывая сказанное, рекомендую для полей, в которых планируется хранить числовые значения с указанной точностью, использовать денежный тип данных.

Дата/Время - Значения даты или времени, относящиеся к годам с 100 по 9999 включительно. Длина поля 8 байт.

Счетчик - тип данных поля, в которое для каждой новой записи автоматически вводится уникальные целые, последовательно возрастающие (на 1) числа. Значения этого поля нельзя изменить или удалить. Длина поля 4 байта для длинного целого, для кода репликации 128 байт. В таблице не может быть более одного поля этого типа. Используется для определения уникального ключа таблицы.

Логический - логические данные, которые могут иметь одно из двух возможных значений Да/Нет; Истина/Ложь; Вкл./Выкл.

Поле объект OLE - Объект (например, рисунок), связанный или внедренный в таблицу Access. Длина поля - до 1 Гигабайта. Для полей типа OLE и MEMO не допускается сортировка и индексирование.

Гиперсылка - в качестве гиперссылки можно указывать путь к файлу на жестком диске, адрес URL. Максимальная длина 64 000 символов.

Мастер подстановок - выбор этого типа данных запускает мастер подстановок. Мастер строит для поля список значений на основе поля из другой таблицы. Значения в такое поле будут вводиться из одного из полей списка. Проще говоря, данный тип позволяет определить вычисляемое поле.

В данном примере базы данных АТП для таблицы ПУНКТЫ_НАЗНАЧЕНИЯ определены три поля:

КОД_ПУНКТА_НАЗНАЧЕНИЯ — Тип данных Счетчик. Поле является первичным ключом. Для того, чтобы создать первичный ключ, следует выбрать поле и щелкнуть на кнопке панели инструментов содержащую ключик в виде иконки, или выполнить эту же операцию с помощью контекстного меню, как показано на рисунке 3.

НАЗВАНИЕ — Тип данных Текстовый, размер поля оставлен предлагаемым по умолчанию и равен 50 символов.

РАССТОЯНИЕ — Тип данных Числовой, размер поля определен как Целое. После сохранения таблица готова к использованию.

Таблица Пункты назначения создается подобным же образом (см. рисунок 1.7).

Связывание таблиц. Чтобы данные в таблицах представляли собой логически целостную структуру БД, необходимо установить связи между таблицами. Для этого следует выбрать пункт главного меню «Сервис»-«Схема данных» либо нажать кнопку на панели инструментов. При этом будет вызвано окно схемы данных и так как ни одной связи еще не задано – диалоговое окно добавления таблиц для установления связей.

Для добавления таблиц на схему следует в окне «Добавление таблицы» двойным нажатием левой кнопки «мышки» на имени таблицы (либо выбором имени таблицы или нескольких таблиц одновременно и нажатием кнопки «Добавить») добавить требуемые (в нашем случае - все) таблицы для установления связей и нажать кнопку «Закрыть». Если добавлены не все таблицы, окно их добавления можно вызвать командой главного меню «Связи»-«Добавить таблицу», или кнопкой на панели инструментов, или соответствующим пунктом во всплывающем по нажатию правой кнопки манипулятора «мышь» контекстном меню.

Типы связей. Между таблицами возможны такие типы связей: один-к-одному, один-ко-многим, многие-к-одному и многие-ко-многим. Тип связи определяется Access автоматически на основе свойств полей, по которым устанавливается связь между таблицами. Например, если поле одной таблицы – имеет тип счетчик и является ключевым, а поле другой таблицы – числовое неиндексированное, то по этим полям будет установлена связь один-ко-многим.

Для создания связи между таблицами можно использовать пункт главного меню «Связи»-«Изменить связь» и далее в появившемся окне (рис. 1.4) нажать кнопку «Новое…» и затем в окне задания полей для связи (рис. 1.5а) выбрать требуемые таблицы и поля (рис. 1.5б) и нажать кнопку «Ок».

Рисунок 1.4 – Окно изменения связей

Рисунок 1.5 – Окно создания связей и пример его заполнения

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

Для редактирования существующей связи её необходимо выделить, наведя на неё указатель «мышки» и выбрав пункт «Связи»-«Изменить связь» из главного или контекстного меню или дважды нажать левую кнопку.

Рисунок 1.6 – Окно изменения связей (пример заполнения)

В Access реализован и более простой и наглядный способ создания связей с использованием технологии «перетаскивания»: необходимо выделить поле по которому устанавливается связь в одной таблице, «перетащить» его удерживая нажатой левую кнопку «мышки» на поле, с которым устанавливается связь, в другой таблице и отпустить левую кнопку «мышки». После этого появится окно изменения связи с автоматически заполненными таблицами и полями для связи (рис. 1.6).

В MS Access также существует возможность использования для связывания таблиц инструментального средства Мастер подстановок. Мастер запускается в режиме конструктора таблицы, для чего в графе Тип данных поля, по которому необходимо установить связь, необходимо выбрать пункт «Мастер подстановок…». Далее, следуя указаниям мастера, выбрать таблицу, связь с которой предполагается установить, и поля для связи и отображения (ключевой столбец при этом рекомендуется скрыть). После завершения работы мастера необходимо настроить установленную связь вручную. Для этого следует обратиться к схеме данных и выполнить команду меню Связи → Отобразить все. Выделить мышью связь и выполнить команду меню Связи → Изменить связь…. В появившемся диалоговом окне (рисунок 1.6) задать опции обеспечения целостности данных; для связей со справочниками рекомендуется запретить каскадное удаление для обеспечения невозможности удаления справочных данных.

Рисунок 1.7 Конструктор таблицы ПУТЕВЫЕ_ЛИСТЫ

Тип отношения «один-ко-многим», указанный в окне на рисунке 1.6, означает, что для каждой записи в родительской таблице ПУНКТЫ_НАЗНАЧЕНИЯ существует множество записей в дочерней таблице ПУТЕВЫЕ_ЛИСТЫ, причем соответствие задается совпадающими значениями ключевого поля (КОД_ПУНКТА_НАЗНАЧЕНИЯ) в обеих таблицах.

В результате схема данных БД будет выглядеть, как на рисунке 1.8.

Рисунок 1.8 Схема данных БД АТП