Uploaded by Нодир Пираков

Лабораторная работа №1 Объекты СУБД MS Access

advertisement
Лабораторная работа № 1
Тема: «Создание таблиц в СУБД MS Access»
Цель работы: рассмотреть и освоить технологию конструирования реляционных
таблиц в MS Access.
Порядок выполнения работы:
1. Рассмотреть основные объекты в СУБД MS Access.
2. Научиться устанавливать соответствующие типы данных и свойства полей.
3. Освоить процесс создания связей между таблицами.
Теоретическая часть
СУБД MS Access предназначена для разработки информационных систем, она
использует реляционную модель данных и графический интерфейс ОС Windows.
Программное приложение позволяет решать как несложные информационные задачи (без
использования программирования), так и создавать сложные информационные системы с
использованием языка программирования Visual Basic for Application. СУБД входит в
профессиональную версию офисной системы Microsoft Office.
К основным объектам MS Access относятся – таблицы, запросы, формы, отчеты,
макросы и модули.
Таблицы – основные объекты любой базы данных. Во-первых, в таблице хранятся
все данные, во-вторых, таблицы хранят и структуру базы данных (поля, их типы и
свойства). Поэтому структура каждой таблицы должна быть тщательно спланирована.
Запросы – объекты, которые предназначены для извлечения данных из таблицы и
представления их пользователю в удобном виде. Из базовой таблицы получают
результирующую таблицу.
Формы – объекты, которые предназначены для удобного ввода и отображения
данных. В форму могут быть внедрены рисунки, диаграммы, звук и видео.
Отчеты
–
объекты, предназначенные для
создания документа, который
впоследствии может быть распечатан или включен в документ другого приложения.
Макрос – это набор из одной или нескольких макрокоманд, которые выполняет
MS Access без участия пользователя. Например, макрос может при загрузке базы данных
автоматически открыть нужные формы или при нажатии кнопки в форме выполнить
некоторое типовое действие (печать формы, открытие другой формы и т.п.). Макросы
позволяют автоматизировать часто выполняемые операции и согласовать работу разных
объектов практически без программирования в обычном понимании. Макрокоманды
выбираются из списка стандартных макрокоманд, например: Открыть объект, Закрыть
объект и т.д.
Модуль – это набор процедур и функций на языке Visual Basic (Access Basic),
которые хранятся вместе как единое целое. Модули обычно используют для создания
более сложных информационных систем.
Каждый объект имеет структуру, характерную для его типа. Например, таблицы
состоят из полей и записей. Формы и отчеты состоят из управляющих элементов,
заголовка и др. Модули состоят из процедур и функций; макросы – из макрокоманд.
Многие из структурных элементов объектов также считаются объектами.
Свойство представляет собой характеристику объекта, например, – имя, размер,
цвет, тип данных поля и т.п. Свойства текущего объекта отображаются в окне свойств в
режиме Конструктора (Лента – Конструктор – Страница свойств). Набор свойств
различен для каждого типа объектов.
Все данные СУБД Microsoft Access 2010 и средства их отображения хранятся в
одном файле с расширением .accdb.
Таблицы
Таблица состоит из записей (строк) и полей (столбцов). Поле содержит
однотипную информацию.
Длина имени таблицы – не более 64 символов.
Длина имени поля – не более 64 символов.
Количество полей в одной таблице – не более 255.
Количество записей – неограниченно.
Для каждого поля необходимо указать тип данных. Тип данных определяет вид и
диапазон допустимых значений, которые могут быть введены в поле, а также объем
памяти, выделяющийся для этого поля.
Таблица может содержать следующие типы полей:
Текстовый – короткий текст – текст и числа, например, имена и адреса, номера
телефонов и почтовые индексы. Текстовое поле может содержать до 255 символов.
Поле Мемо – длинный текст – текст и числа, например, комментарии и пояснения.
Данное поле может содержать до 65 535 символов.
Числовой – общий тип для числовых данных, допускающих проведение
математических расчетов, за исключением расчетов для денежных значений. Свойство
Размер поля позволяет указать различные типы числовых данных. Длина – до 8 байт.
Точность – до 15 знаков.
Дата/время – значения даты и времени. Пользователь имеет возможность выбрать
один из многочисленных стандартных форматов или создать специальный формат. Длина
– 8 байт.
Денежный – денежные значения. Числа представляются с двумя знаками после
запятой. Не рекомендуется использовать для проведения денежных расчетов значения,
принадлежащие к числовому типу данных, так как последние могут округляться при
расчетах. Значения типа «Денежный» всегда выводятся с указанным числом десятичных
знаков после запятой. Длина – 8 байт.
Счетчик – автоматически появляется нумерация. Счетчик увеличивается на
единицу для каждой следующей записи. Нумерация начинается с 1. Поле счетчика удобно
для создания ключа. В таблице может быть только одно такое поле. Длина – 4 байта.
Логический – значения «Да/Нет», «Истина/Ложь», «Вкл/Выкл», т.е. одно из двух
возможных значений. Длина – 1 байт.
Поле объекта ОLЕ – объекты, созданные в других программных приложениях,
поддерживающих протокол ОLЕ (англ. Object Linking and Embedding, связь и внедрение
объектов в другие документы и объекты), например графики, рисунки и т.п. Объекты
связываются или внедряются в базу данных Microsoft Access через элемент управления в
форме или отчете.
Мастер подстановок – вызывает мастера подстановок, с помощью которого
можно создать поле, позволяющее выбрать значения из списка, построенного на основе
значений поля другой таблицы, запроса или фиксированного набора значений. Такое поле
отображается как поле со списком. Если список построен на основе поля таблицы или
запроса, тип данных и размер создаваемого поля определяется типом данных и размером
привязанного столбца; если на основе набора значений – размером текстового поля,
содержащего значение. Кроме того, мастер подстановок позволяет определить связь
таблиц и включить проверку связной целостности данных.
Гиперссылка – применяется для хранения ссылок на веб-узлы (URL), на узлы или
файлы интрасети или локальной сети (UNC-адреса – стандартный формат записи пути), а
также на узлы или файлы локального компьютера. Кроме того, можно использовать
ссылку на объекты MS Access, хранящиеся в базе данных.
Вложение
–
используется для вложения в поле записи файлов изображений,
электронных таблиц, документов, диаграмм и других файлов поддерживаемых типов
точно так же, как
сообщения электронной почты. Вложенные файлы можно
просматривать и редактировать в соответствии с заданными для поля параметрами. Эти
поля не имеют ограничений, связанных с отсутствием зарегистрированных OLE-серверов.
Более рационально используют место для хранения, чем поля с типом данных Поле
объекта OLE..
Индексирование полей таблицы
Индексирование позволяет ускорить сортировку и поиск данных в таблице. Можно
индексировать числовые, денежные, текстовые, логические поля, а также поля типа
Счетчик и Дата. Не следует создавать слишком много индексов для одной таблицы, т.к.
это замедлит ввод и редактирование ее данных.
Первичный ключ – это специальный тип индекса, который однозначно
идентифицирует каждую запись. В первичный ключ могут входить несколько полей, но
значение первичного ключа должно быть уникальным для каждой записи. Первичные
ключи используются для установления связей между таблицами.
Определение ключевого поля
Для создания связей между таблицами необходимо в каждой таблице определить
ключевое поле. В качестве такового выбирают поле, данные в котором повторяться не
могут (например, идентификационный код). Если в таблице такого поля нет, то его можно
создать искусственно комбинацией нескольких полей. Если в таблице вообще нет полей,
которые могут быть использоваться в качестве ключевых, то следует ввести
дополнительное поле типа Счетчик – оно не может содержать повторяющихся данных по
определению.
Для определения ключевого поля, необходимо в режиме Конструктора, выделить
нужное поле и нажать клавишу
на панели инструментов или выбрать команду
Ключевое поле в контекстном меню. Если необходимо создать ключевое поле на базе
нескольких полей, то нужно сначала выделить эти поля (удерживая клавишу Ctrl щелкать
на квадратных маркерах слева от имен полей), а затем выбрать команду Ключевое поле.
Если необходимо назначить ключевым другое поле, то прежде нужно отменить
неверно заданный ключ (выделить соответствующее поле и нажать кнопку
выбрать команду Ключевое поле), а затем задать новое ключевое поле.
или
Связи между таблицами
Таблицы могут быть связаны отношениями один–к–одному, один–ко–многим и
многие–ко–многим. MS Access позволяет использовать только отношения первых двух
типов.
При установлении связей нужно определить таблицу, какая является главной, а
какая – подчиненной.
Отношение один–к–одному означает, что одной записи подчиненной таблицы
соответствует только одна запись в главной таблице. Такие отношения встречаются очень
редко, т.к. требую неоправданно много места в базе данных. Вместо них можно добавить
поля подчиненной таблицы к полям главной.
Наиболее часто используются отношения один–ко–многим. В этом случае одной
записи в главной таблице соответствует несколько записей в подчиненной таблице.
Для создания отношений необходимо указать поля в двух таблицах, которые
содержат одни и те же данные. Обычно такое поле в одной из таблиц (главной) является
ключевым. Имена связывающих полей могут отличаться, но типы и свойства должны
совпадать.
Практическая часть
Задание 1. Создание таблиц в MS Access
Создать
базу
данных
Университет
на
основе
инфологической
модели,
приведенной на рисунке. База данных должна содержать 4 взаимосвязанных таблицы:
Студент, Группа, Специальность и Факультет.
Поля таблицы Студент:
 Номер зачетной книжки – ключевое поле числового типа, размер – длинное целое.
 Номер группы – числовое поле, размер – целое.
 Фамилия, Имя, Отчество – текстовое поле длиной 50 символов.
 Дата рождения – поле типа «дата/время», краткий формат даты.
 Коммерческий – логическое поле (да/нет).
Поля таблицы Группа:
 Номер группы – ключевое поле числового типа, целое.
 Номер специальности – числовое поле, длинное целое.
 Номер факультета – числовое поле, байтовое.
 Номер курса – числовое поле, байтовое.
Поля таблицы Факультет:
 Номер факультета – ключевое поле числового типа, байтовое.
 Наименование факультета – текстовое поле, 30 символов.
 Декан – тестовое поле, 15 символов.
Поля таблицы Специальность:
 Номер специальности – ключевое поле числового типа, длинное целое.
 Наименование специальности – текстовое поле, 40 символов.
 Стоимость обучения – денежного типа.
Инфологическая модель базы данных Университет:
1. Открыть MS Access 2010.
2. Выбрать команду Новая база данных. Справа на панели указать имя новой базы
данных Университет_Фамилия.accdb. Командная кнопка Создать. По умолчанию
в окне базы данных откроется режим Таблицы.
3. Таблицы
можно
создать
несколькими
способами:
с
помощью
режима
Конструктора, с помощью режима Таблицы и путем импорта данных. Рассмотрим
создание таблицы с помощью режима Конструктор.
4. Перейти в режим Конструктора. Присвоить имя таблицы Студент.
5. Ввести имена полей и установить необходимый тип данных в соответствии с
заданием по таблице Студент. Определить ключевое поле:
6. Сохранить изменения в базе данных. Перейти в режим Таблицы.
7. Создать записи в сформированной таблице, т.е. ввести данные для 2-х групп по 10
студентов в каждой. При вводе данных записи сохраняются автоматически.
8. Самостоятельно создать в режиме Конструктора таблицы (Группа, Факультет,
Специальность): Лента – Создание – Таблица.
 В таблице Группа поле «Номер группы» должно быть того же типа и того же
размера, что и в таблице Студент. В эту таблицу следует ввести 3 строки, в том
числе с теми же номерами групп, что и в таблице Студент.
 Аналогично, в таблице Факультет поле «Номер факультета» должно быть того
же типа и того же размера, что и в таблице Группа. В таблице должно быть 3
строки, в том числе строки с такими же номерами факультетов, что и в таблице
Группа.
 В таблице Специальность поле «Номер специальности» должно быть того же типа
и того же размера, что и в таблице Группа. В таблице должно быть 3 строки, в том
числе строки с такими же номерами специальностей, что и в таблице Группа.
9. Сохранить изменения.
Задание 2. Создание связей между таблицами
Установить связи между данными таблиц Студент, Группа, Специальность и
Факультет.
1. Выполнить команду Лента – Работа с базами данных – Схема данных.
2. В диалоговом окне Добавление таблицы последовательно выбирать указанные
выше таблицы, щелкая затем по кнопке Добавить. Добавив последнюю
таблицу – командная кнопка Закрыть.
3. В окне Схема данных установить связь между таблицей Студент и таблицей
Группа. Для этого:
– выделить щелчком ключевое поле Номер группы в таблице Группа и, удерживая
нажатой левую клавишу мыши, переместить указатель на поле с тем же
названием в таблице Студент;
– отпустить клавишу мыши, появится окно Связи, в котором необходимо
включить флажки (Обеспечение целостности данных, каскадное обновление
связанных полей, каскадное удаление связанных записей). Должно быть
соответствие со следующим рисунком. Далее командная кнопка Создать.
Примечание. Включение флажка Обеспечение целостности данных позволяет
защититься от случаев удаления записей из одной таблицы, при которых
связанные с ними данные других таблиц останутся без связи. Флажки Каскадное
обновление
связанных
полей
и
Каскадное
удаление
связанных
записей
обеспечивают одновременное обновление или удаление данных во всех
подчиненных таблицах при их изменении в главной таблице.
4. В окне Схема данных появится связь между таблицами типа один–ко–многим.
5. Аналогично установить связь между таблицами Специальность и Группа по
полю Номер специальности. Установить связь между таблицами Группа и
Факультет по полю Номер факультета.
6. Сохранить.
7. Закрыть окно Схема данных.
Контрольные вопросы
1. Для чего предназначена СУБД MS Access? Какое расширение имеют файлы,
созданные в данном программном приложении?
2. Перечислите объекты MS Access. Без какого объекта невозможно построение базы
данных?
3. Из каких элементов состоит таблица в контексте СУБД?
4. Для чего указываются типы данных полей?
5. Назовите свойства логического поля.
6. Что такое ключевое поле? Для каких целей необходимо в каждой таблице
определить ключевое поле?
7. Назовите виды связей (отношений) между таблицами.
8. Какие режимы работы существуют в MS Access?
9. Для чего предназначена область Схема данных?
10. В каких случаях необходимо устанавливать дополнительно опции Обеспечение
целостности данных, Каскадное обновление связанных полей, Каскадное удаление
связанных записей? Объясните назначение каждой опции.
Download