
- •Введение
- •Лабораторная работа 1 создание таблиц и схемы базы данных
- •Лабораторная работа 2 ввод данных в таблицы
- •Лабораторная работа 3 сортировка, поиск и фильтрация данных
- •Лабораторная работа 4 создание запросов
- •Лабораторная работа 5 создание sql-запросов
- •Лабораторная работа 6 создание форм
- •Лабораторная работа 7 создание отчетов
- •Создайте отчет, содержащий сведения о количестве задержанных книг по месяцам.
- •1.2 Создайте отчет, содержащий сведения о читателях-должниках.
- •1.3 Создайте отчет, содержащий сведения о суммах штрафов, которые должны заплатить читатели-должники.
- •Лабораторная работа 8 разработка интерфейса приложения
- •Создание функциональных кнопок на страницах
Ф
ЕДЕРАЛЬНОЕ
ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
"МУРМАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ"
Кафедра информационных систем
и прикладной математики
Основы работы в СУБД Access
Методические указания к выполнению лабораторных работ
По дисциплинам «Информатика», «Информационные технологии», «Информационные системы в экономике», «Информатика и компьютерные технологии», «Базы данных»
Мурманск
2012
Составители – Сенецкая Лариса Борисовна, к.э.н., доцент кафедры информационных систем и прикладной математики Мурманского государственного технического университета, Невская Валерия Игоревна, старший преподаватель кафедры информационных систем и прикладной математики Мурманского государственного технического университета, Товстоган Анжела Васильевна, старший преподаватель той же кафедры.
Методические указания рассмотрены и одобрены на заседании кафедры 31 января 2013 года, протокол № 4
Рецензент – О.Б. Кузнецова, к.э.н., доцент кафедры информационных систем и прикладной математики Мурманского государственного технического университета.
Печатается в авторской редакции
Оглавление
Введение 4
Лабораторная работа 1 СОЗДАНИЕ ТАБЛИЦ И СХЕМЫ БАЗЫ ДАННЫХ 5
Лабораторная работа 2 ВВОД ДАННЫХ В ТАБЛИЦЫ 15
Лабораторная работа 3 СОРТИРОВКА, ПОИСК И ФИЛЬТРАЦИЯ ДАННЫХ 21
Лабораторная работа 4 СОЗДАНИЕ ЗАПРОСОВ 25
Лабораторная работа 5 СОЗДАНИЕ SQL-ЗАПРОСОВ 38
Лабораторная работа 6 СОЗДАНИЕ ФОРМ 44
Лабораторная работа 7 СОЗДАНИЕ ОТЧЕТОВ 52
Лабораторная работа 8 РАЗРАБОТКА ИНТЕРФЕЙСА ПРИЛОЖЕНИЯ 60
Введение
В наше время объем информации, накапливаемой человечеством, ежегодно увеличивается в два раза. Растет и ритм жизни. Организации и фирмы сталкиваются с необходимостью обработки больших объемов данных в более сжатые сроки, чем когда-либо ранее.
Поэтому актуальность проблемы компьютерной поддержки процесса обработки информации несомненна. Информационные системы и технологии служат средством повышения производительности и эффективности работы людей. Ядром любой информационной системы является база данных (БД).
База данных – совокупность специальным образом организованных, логически связанных данных, предназначенных для обеспечения информационных потребностей организации.
Система управления базами данных (СУБД) – это сложный программный комплекс, предназначенный для выполнения всей совокупности операций, связанных с созданием и эксплуатацией БД информационной системы.
Цель предлагаемого пособия – практическое освоение возможностей реляционных СУБД на примере СУБД Microsoft Access. На лабораторных работах студенты проектируют базу данных по предметной области «Библиотека». Методические указания включают в себя восемь лабораторных работ. В пособии излагаются краткие теоретические сведения по среде разработки БД, предложены задания и даны методические рекомендации по их выполнению и контрольные вопросы. Ответ на ряд вопросов предполагает самостоятельное изучение справочного материала по СУБД Microsoft Office Access 2007 или источников, указанных в списке литературы.
Лабораторная работа 1 создание таблиц и схемы базы данных
Цель работы – приобретение навыков по созданию таблиц базы данных и схемы, связывающей таблицы между собой.
Краткие теоретические сведения
База данных в Access представляет собой единый объект, который включает в себя такие составляющие, как таблицы, отчеты, запросы, формы и т.д., и позволяет хранить их в едином дисковом файле с расширением *.accdb.
Основным структурным компонентом БД является таблица. Каждому полю (столбцу) таблицы присваивается уникальное имя, которое может содержать до 64-х символов (буквы и цифры), включая пробелы.
Данные в столбце таблицы должны быть одного типа. СУБД Miсrosoft Access поддерживает следующие типы данных (табл. 1.1).
Таблица 1.1
Типы данных СУБД Miсrosoft Access
Тип данных |
Описание |
Размер |
Текстовый |
Символьные или числовые данные, не требующие вычислений. Максимальное количество символов – 255. |
До 255 символов |
Поле МЕМО |
Длинный текст – до 65 536 символов. |
До 65 535 символов |
Числовой |
Числовые данные, используемые в расчетах. |
1,2,4,8 и 16 байтов |
Дата/Время |
Хранение дат и времени. |
8 байтов |
Денежный |
Хранения денежных сумм с точностью до четырех знаков после запятой. Целая часть может содержать до 15 десятичных знаков. |
8 байтов |
Счетчик |
Поле заполняется автоматически уникальными значениями последовательными или случайными, в зависимости от значения свойства Новые значения. В таблице может быть только одно поле с типом данных Счетчик. Номер, присвоенный записи, не может быть изменен или повторно использован после удаления записи. |
4 байта |
Логический |
Предназначен для хранения одного из двух значений, интерпретируемых как "Да/Нет", "Истина/Ложь", "Вкл./Выкл." |
1 бит |
Поле объекта OLE |
Объект, созданный в других программах, которые используют протокол OLE. Объекты OLE связываются с базой данных или внедряются в нее. |
До 1 Гигабайта |
Вложение |
Хранение любых присоединенных объектов. В поле отображается количество присоединенных объектов и значок скрепки, при нажатии на котором появляется окно Вложения. В окне можно добавить и удалить вложенный объект, открыть его для редактирования, а также сохранить объект в файловой системе. При добавлении файла как вложения в базе данных создается копия этого файла. Изменения, внесенные при редактировании вложенного объекта, никак не отражаются на содержимом исходного файла в файловой системе, а изменения в файле не переносятся автоматически на объект, хранимый в БД. |
|
Гиперссылка |
Хранение ссылки на веб-страницу; на файл на FTP-сервере, в локальной сети или на компьютере; на адрес электронной почты и т. п. |
До 2048 символов
|
Подстановка |
Список значений, возвращаемых запросом или из таблицы, либо набор значений, указанных при создании поля. |
|
Для каждого поля (столбца) определяются свойства (перечень свойств зависит от выбранного типа данных):
Размер поля задает максимальный размер данных, для хранения которых предназначено данное поле. Для текстовых данных размер поля определяется количеством символов, которые будут вводиться в поле. Предельное значение – 255 символов. Для числовых данных размер поля может быть следующим:
байт – целые числа от 0 до 255, занимает при хранении 1 байт;
целое – целые числа от -32 768 до 32 767, занимает 2 байта;
длинное целое – целые числа от -2 147 483 648 до 2 147 483 647, занимает 4 байта и др.
Формат поля задает способ отображения содержимого поля.
Подпись задает заголовок столбца, отличный от имени соответствующего поля. Это полезно в ситуациях, когда удобнее иметь заголовок столбца более длинный или более понятный, чем используемое имя поля.
Маска ввода задает формат, позволяющий автоматизировать проверку вводимых символов и облегчить процесс ввода данных. Маска ввода состоит из постоянных символов (таких как скобки, точки или дефисы) и специальных символов, указывающих, в какие позиции, в каком количестве и какого типа данные могут быть введены. Символы, используемые для задания маски ввода приведены в таблице 1.2.
Значение по умолчанию задает значение, присваиваемое автоматически в качестве значения поля.
Условие на значение определяет условие (ограничение), накладываемое на вводимые в поле данные.
Сообщение об ошибке определяет то сообщение, которое будет выводиться, если при вводе данных не соблюдается условие, указанное в свойстве Условие на значение.
Обязательное поле – свойство, указывающее требует ли поле обязательного ввода значения. Если это свойство имеет значение "Да", то при вводе новой записи необходимо ввести значение в это поле. Пустые (Null) значения в этом поле не допускаются.
Индексированное поле определяет, является ли данное поле индексированным и если является, то в каком режиме. Если поле индексированное, то средствами СУБД в системе будет создан упорядоченный список содержимого данного поля, что обеспечивает более быстрый доступ к данным. Свойство Индексированное поле может иметь следующие значения: Нет (значение по умолчанию) – индекс не создается; Да (Допускаются совпадения) – в индексе допускаются повторяющиеся значения; Да (Совпадения не допускаются) – повторяющиеся значения в индексе не допускаются.
Таблица 1.2
Символы, часто используемые для задания маски ввода
Символ маски |
Назначение |
0 |
Цифра от 0 до 9 ( ввод обязателен; символы плюс [+] и минус [-] не допускаются) |
9 |
Цифра или пробел (ввод не обязателен; символы плюс и минус не допускаются) |
# |
Цифра или пробел, знаки плюс или минус (ввод не обязателен) |
L |
Буква (от A до Z или от А до Я, ввод обязателен) |
? |
Буква (от A до Z или от А до Я, ввод не обязателен) |
A |
Буква или цифра (ввод обязателен) |
a |
Буква или цифра (ввод необязателен) |
& |
Любой символ или пробел (ввод обязателен) |
C |
Любой символ или пробел (ввод необязателен) |
< |
Указывает перевод всех следующих символов на нижний регистр |
> |
Указывает перевод всех следующих символов на верхний регистр |
В каждой таблице должен быть первичный ключ (PK) – один или несколько столбцов, значения которых уникально идентифицируют строки. Например, в таблице Читатель, содержащей сведения о читателях библиотеки (номер билета, Ф.И.О., домашний адрес, место учебы и т.д.), первичным ключом служит столбец Номер читательского билета, поскольку, содержит неповторяющиеся значения. Зная номер билета читателя, можно в любой момент времени найти строку, содержащую информацию о его личных данных.
Внешний ключ (FK) – один или несколько столбцов, значения которых составляют одновременно значение первичного ключа другой таблицы. Внешний ключ позволяет создать связь между двумя таблицами. Например, в таблице Журнал, содержащей сведения о выдаче и возврате книг, одним из внешних ключей служит столбец Номер читательского билета.
База данных, как правило, состоит из нескольких таблиц. СУБД Access поддерживает два типа связей между таблицами: «один-к-одному» и «один-ко-многим».
Отношение «один-к-одному» означает, что каждой записи одной таблицы может соответствовать ноль записей или только одна запись другой таблицы.
Отношение «один-ко-многим» означает, что каждой записи одной таблицы может соответствовать ноль, одна или несколько записей другой таблицы, но в тоже время любая запись второй таблицы связана только с одной записью первой таблицы.
Линия связи создается между первичным ключом родительской таблицы и внешним ключом дочерней таблицы. Тип данных и размер этих ключей должны совпадать. Связь типа «один-к-одному» определяется в том случае, если внешний ключ обладает свойством «Индексированное поле. Совпадения не допускаются».
Задание
Создать в среде Miсrosoft Access в режиме Конструктора таблицы предметной области «Библиотека»: раздел, тема, книга, читатель, журнал.
Создать схему базы данных.
Последовательность выполнения работы
Задание 1. Создание таблиц базы данных. Подготовительный этап
Запустите Microsoft Access.
В диалоговом окне, в группе Создание базы данных, поставьте переключатель в положение Новая база данных и нажмите кнопку ОК.
В правой части окна в области «Новая база данных»( рис.1.1), выбрать пиктограмму «папка»
Рис.1.1 Фрагмент окна «Приступая к работе MS Access»
В появившемся окне Файл новой базы данных укажите папку X:/ и имя файла Библиотека, и нажмите кнопку Создать.
Создание таблицы «Раздел»
На ленте Создание двойным щелчком выберите Конструктор таблиц.
В окне Конструктора таблицы в столбце Имя поля введите названия столбцов для таблицы Раздел: код раздела и ниже название раздела. Рис(1.2)
В столбце Тип данных из раскрывающегося списка для поля код раздела выберите числовой, а для поля название раздела – текстовый. Рис(1.2)
Рис.1.2 Ввод названий полей в таблицу раздел
У
кажите
в таблице первичный
ключ. Для
этого переведите курсор в поле код
раздела и
на панели
инструментов ленты
Конструктор
выберите
пиктограмму Ключа(
рис.1.3)
Рис1.3 Панель инструментов ленты «Конструктор»
В нижней части окна Конструктора, в области «Свойства поля» в строке «Индексированное поле», появится значение «Да (Совпадения не допускаются)».
Сохраните созданную структуру таблицы, для этого на панели инструментов выберите кнопку с пиктограммой дискеты. В диалоговом окне Сохранение введите имя таблицы: Раздел.
Закройте созданную таблицу.
Создание таблицы «Тема»
Снова на ленте Создание двойным щелчком выберите Конструктор таблиц, чтобы создать структуру таблицы Тема. С помощью Конструктора создайте таблицу Тема, содержащую следующие поля (табл.1.3):
Таблица 1.3
Структура таблицы Тема
Имя поля |
Тип данных |
код темы |
Числовой |
код раздела |
Числовой |
название темы |
Текстовый |
Введите названия столбцов для таблицы Тема:, ,. Выберите типы данных: для поля код темы – числовой, для поля код раздела – числовой, для поля название темы – текстовый.
Укажите в таблице первичный ключ. Для этого переведите курсор в поле код темы и на панели инструментов выберите пиктограмму Ключа.
Сохраните созданную таблицу под название Тема и закройте ее.
Создание таблицы «Книга»
С помощью Конструктора создайте таблицу Книга, содержащую следующие поля (табл.1.4).
Таблица 1.4
Структура таблицы Книга
Имя поля |
Тип данных |
Номер книги |
Числовой |
Код темы |
Числовой |
Автор |
Текстовый |
Название |
Текстовый |
Издательство |
Текстовый |
Год издания |
Числовой |
Количество экземпляров |
Числовой |
Цена |
Денежный |
Укажите в таблице первичный ключ – Номер книги.
Сохраните и закройте таблицу Книга.
Создание таблицы «Читатель»
С помощью Конструктора создайте таблицу Читатель, содержащую следующие поля( табл.1.5).
Таблица 1.5
Структура таблицы Читатель
Имя поля |
Тип данных |
Номер билета |
Числовой |
Фамилия |
Текстовый |
Имя |
Текстовый |
Отчество |
Текстовый |
Дата рождения |
Дата/Время |
Адрес |
Текстовый |
Домашний телефон |
Текстовый |
Место учебы |
Текстовый |
Укажите в таблице первичный ключ – Номер билета.
Переведите курсор в поле Имя и в нижней части окна Конструктора, в области «Свойства поля», в строке «Размер» укажите 20.
Переведите курсор в поле Адрес и в области «Свойства поля», в строке «Подпись» введите Домашний адрес.
Переведите курсор в поле Домашний телефон и в области «Свойства поля», в строке «Маска ввода» введите ##-##-##.
Переведите курсор в поле Фамилия и в области «Свойства поля», в строке «Маска ввода» введите >?<??????????????.
Переведите курсор в поле Место учебы и в области «Свойства поля», в строке «Значение по умолчанию» введите МГТУ.
Сохраните и закройте таблицу Читатель.
Создание таблицы «Журнал»
С помощью Конструктора создайте таблицу Журнал, содержащую следующие поля( табл.1.6).
Таблица 1.6
Структура таблицы Журнал
Имя поля |
Тип данных |
Номер строки |
Числовой |
Номер билета |
Числовой |
Номер книги |
Числовой |
Дата выдачи |
Дата/Время |
Дата возврата план |
Дата/Время |
Дата возврата факт |
Дата/Время |
Залог (да/нет) |
Логический |
Укажите в таблице первичный ключ – Номер строки.
Переведите курсор в поле Залог и в области «Свойства поля», в строке «Формат» из раскрывающегося списка выберите Включено/Выключено.
Переведите курсор в поле Дата выдачи и в области «Свойства поля», в строке «Условие на значение» введите >=#01.01.00#, а в строке «Сообщение об ошибке» введите Дата введена неверно! Библиотека открылась 1января 2000
Сохраните и закройте таблицу Журнал.
Самостоятельное задание
Создать таблицу Паспорт для хранения паспортных данных читателей и включить ее в схему данных. Определяя тип связи, помните, что у читателя может быть только один паспорт.
Задание 2. Создание схемы базы данных
Выберите команду Работа с базами данных/Схема данных.
В диалоговом окне Добавление таблицы выберите из списка первую таблицу и нажмите кнопку Добавить, затем выберите следующую таблицу и снова нажмите кнопку Добавить. Таким образом последовательно выберите все таблицы и закройте диалоговое окно.
В окне Схема данных установите курсор на заголовке таблицы Тема и переместите ее под таблицу Раздел, аналогичным образом переместите таблицу Книга под таблицу Тема, а таблицу Журнал под таблицу Книга.
Установите курсор на поле Код раздела в таблице Раздел, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Код раздела в таблице Тема. Отпустите клавишу мыши.
На экране появится диалоговое окно Изменение связей. Включите опцию Обеспечение целостности данных, при этом для Вас станут доступными две дополнительные опции:
каскадное обновление связанных полей – это автоматическое обновление значений внешнего ключа в дочерней таблице (поля Код раздела в таблице Тема), при изменении значения первичного ключа в родительской таблице (поля Код раздела в таблице Раздел).
каскадное удаление связанных записей – это автоматическое удаление дочерних строк (строк в таблице Тема) при удалении родительской строки (строки в таблице Раздел).
Включите эти дополнительные опции, щелкните по кнопке ОК. В окне Схема данных связь будет показана графически.
Установите курсор на поле Код темы в таблице Тема, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Код темы в таблице Книга, чтобы создать связь между таблицами Тема и Книга. В диалоговом окне включите опции обеспечения целостности данных и нажмите кнопку Создать.
Установите курсор на поле Номер книги в таблице Книга, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Номер книги в таблице Журнал, чтобы создать связь между таблицами Книга и Журнал. В диалоговом окне включите опции обеспечения целостности данных и нажмите кнопку ОК.
Установите курсор на поле Номер билета в таблице Читатель, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Номер билета в таблице Журнал, чтобы создать связь между таблицами Читатель и Журнал. В диалоговом окне включите опции обеспечения целостности данных и нажмите кнопку ОК.
Разместите таблицы так, чтобы были видны все линии связей между ними.
Сохраните созданную схему базы данных и закройте окно Схема данных.
Контрольные вопросы
Перечислите типы данных, поддерживаемые СУБД Access.
Объясните назначение свойств: Размер, Условие на значение, Сообщение об ошибке.
Каким требованиям должны удовлетворять поля, чтобы между ними можно было создать связь?
Дайте определение понятиям: «первичный ключ», «внешний ключ».
Назовите первичные и внешние ключи каждой из созданных таблиц.
Какие типы связей между таблицами поддерживает СУБД Access?
Каким требованиям должны отвечать ключевые поля таблиц, чтобы