Работа с базой данных в MS Access
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РФ
НОВГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИМЕНИ ЯРОСЛАВА МУДРОГО
ИНСТИТУТ ЭКОНОМИКИ И УПРАВЛЕНИЯ
КАФЕДРА СЭММ
ЛАБОРАТОРНАЯ РАБОТА № 2
Создание таблиц в MS Access.
Выполнила:
Студентка гр. 2873
Иванова К.В.
Проверила:
Челпанова М.Б.
Великий Новгород
2008
Цель работы:
Разработать структуру таблиц собственной базы данных, используя различные способы.
Заполнить таблицы записями
Установить связи между таблицами (1 – 1; 1 - ∞; ∞ - ∞)
Выполнение работы.
Сначала создадим структуру таблиц собственной базы данных, используя различные способы, затем установим связи между ними.
Создание структуры таблиц.
Открыв MS Access, мы видим, что таблицу можно создать тремя способами.
Создание структуры таблиц с помощью мастера. Здесь автоматически обеспечиваются стандартные имена и типы данных полей таблицы. Для создания нужно выполнить следующие действия:
Из списка образцов таблиц выбрать прототип таблицы, которая похожа на создаваемую таблицу, а из списка образцов полей – поля таблицы, с помощью кнопки > разместить их в списке полей новой таблицы. Сформировав список полей - <Далее>.
В окне с запросом о задании имени таблицы указать способ определения ключа.
Если в БД уже существуют созданные ранее таблицы, то на этом шаге появится запрос на создание связей новой таблицы с существующими. В появившемся диалоговом окне выбираем один из возможных типов связей и ОК.
Выбор режима дальнейшей работы: изменить структуру таблицы, ввести данные в таблицу или ввести данные непосредственно в таблицу с помощью формы, создаваемой мастером. После выбора режима <Готово>.
Создание структуры таблиц с помощью Конструктора.
Создание имен полей, типов полей. В этом режиме в верхней части окна находится таблица, в которую заносятся: Имя поля, Тип данных, Описание.
Сохранение таблицы. Меню – Файл – Сохранить. Ввести название таблицы. После этого появится сообщение о создании первичного ключа.
Создание ключевого поля. Выделить необходимое поле. Команда Правка – Ключевое поле. В таблице напротив этого поля появится ключ, что означает, что данное поле является ключевым.
Заполнение таблицы. Из режима Конструктора переходим в режим таблицы (Вид – Режим таблицы) и заполнить ее.
Создание таблицы путем ввода данных. Этот способ является более простым и наглядным
В появившемся окне находится созданная по умолчанию таблица, в которой содержится 10 столбцов и 20 строк. Ввести данные.
Сохранение таблицы. Меню – Файл – Сохранить. Ввести название таблицы. После этого появится сообщение о создании первичного ключа. Выбрать Нет. При сохранении таблицы под указанным именем лишние строки и столбцы автоматически уберутся.
Создание ключевого поля. Чтобы определить Код как ключевое, нужно перейти в режим Конструктора – команда меню Вид – Конструктор. Выделить поле Код Правка – Ключевое поле.
Все изменения структуры таблицы проводятся в режиме Конструктора. Необходимо проверить верно ли выбраны типы данных.
Создание связей между таблицами.
Связывание таблиц. При этом необходимо закрыть все таблицы БД. Выбрать команду Сервис – Схема данных. В появившемся диалоговом окне Схема данных добавить таблицы, которые нужно связать: Связи – Добавить таблицу. В окне Добавление таблиц выбрать связываемые таблицы и нажать Добавить. Закрыть окно. В окне диалога Схема данных появятся связываемые таблицы. Выбрать поле связи (ключевое поле) в первой таблице и, не отпуская переместить его в соответствующее поле другой таблицы. На экране появится окно Изменение связей. Здесь необходимо проверить правильность имен связываемых полей и установить обеспечение целостности данных. Связи между таблицами устанавливаются только на основании совпадающих полей. У них должен совпадать тип данных.
Условие целостности данных – это набор правил, используемых для поддержания связей между записями в связанных таблицах. Они делают невозможным случайное удаление или изменение связей данных.
Ограничения:
Невозможно ввести в поле внешнего ключа связанной таблицы значение, не содержащееся в ключевом поле главной таблицы. Но можно вводить пустые значения, показывающие, что записи не связаны.
Нельзя удалять записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице.
Нельзя изменять значение ключевого поля в главной таблице, если имеются записи, связанные с этой записью.
Чтобы преодолеть ограничения на удаление или изменение связанных записей, сохраняя при этом целостность данных, нужно включить режимы каскадного обновления и каскадного удаления. При установленном флажке Каскадное обновление связанных полей изменение значения в ключевом поле главной таблицы приводит к автоматическому обновлению соответствующих значений во всех связанных таблицах. При установленном флажке Каскадное удаление связанных записей удаление записи в главной таблице приводит к автоматическому удалению связанных записей в подчиненной таблице. Эти флажки устанавливаются в окне диалога Изменение записей только после установки опции Обеспечение целостности данных.
Затем нажать кнопку Создать. После этого окно Схема данных примет иной вид.
В MS Access существует 4 типа связей:
«один-к-одному» - одной записи в одной таблице соответствует одна запись в другой таблице. (В нашем случае это связь между таблицами Виды услуг и Расценка на заработную плату.)
«один-ко-многим» - каждая запись главной (первой) таблицы может быть связана с любым числом записей второй таблицы. Но каждая запись второй таблицы может быть связана не более чем с одной записью первой таблицы. (У нас так связаны таблицы Расценка на з/п, Косметические средства, Посетители и Исполнители с таблицей Спрос на услуги салона.)
«многие-к-одному» - также как предыдущая связь. (У нас так связана таблица Спрос на услуги салона с таблицами Расценка на з/п, Косметические средства, Посетители и Исполнители.)
«многие-ко-многим» - каждая запись главной таблицы может быть связана с любым числом записей другой таблицы. И наоборот. Эта связь представляет собой две связи 1 - ∞ через третью таблицу. Для этого выполняются следующие действия: создается третья (связующая) таблица с полями, описание которых совпадает с описанием ключевых полей в каждой из двух связываемых таблиц; определение в новой таблице ключа, содержащего все ключевые поля двух связываемых таблиц; определение соотношения «один-ко-многим» между каждой из двух таблиц и связующей таблицей. (В нашем случае это связь между таблицами Посетители и Виды услуг через Вспомогательную)
Изменение существующей связи. Закрыть все таблицы, затем нажать Схема данных на панели инструментов. Если таблицы, связи между которыми требуется изменить, не отображаются в окне диалога Схема данных, нажать кнопку Отобразить таблицу, выбрать нужную таблицу и нажать Закрыть. Далее установить указатель на линию связи, которую требуется изменить и, дважды щелкнув мышью, внести изменения в открывшемся окне Изменение связей.
Удаление связи. Нажать Схема данных, выделить мышью линию связи, которую нужно удалить. Нажать клавишу <Delete>.
Вывод: мы научились разрабатывать структуру таблиц собственной базы данных, используя различные способы, и устанавливать связи между этими таблицами.
ЛАБОРАТОРНАЯ РАБОТА № 3
Разработка форм.
Цель работы:
На основе имеющихся таблиц
Создать составную форму для редактирования записей таблиц нашей базы данных, используя режим Мастера.
В режиме Конструктора создать форму для одной из таблиц, провести в ней расчеты, используя построитель выражений.
Выполнение работы.
В MS Access существует два формата отображения содержимого таблицы – в виде таблицы и в виде формы. Формы являются мощным и гибким средством предоставления информации. Она позволяет объединить поля в группы по определенным признакам, что облегчает восприятие информации.
Форму можно задать тремя различными способами:
При помощи автоформы на основе таблицы
При помощи мастера на основе одной или нескольких таблиц. Мастер задает подробные вопросы об источниках записей, полях, макете, требуемых форматах и создает форму на основании полученных ответов.
Вручную в режиме Конструктора.
Для создания в MS Access формы любыми из этих способов на начальном этапе нужно:
Открыть окно базы данных
Активизировать категорию «Формы»
Кнопка Создать
В окне Новая форма выбрать требуемый вариант из списка способов создания форм.
Для создания Автоформы выделить имя таблицы и в меню – Вставка – Автоформа.
Создание формы с помощью Мастера аналогично работе с мастером при создании таблиц: сначала выбирается таблица, из нее – нужные поля для формы, затем выбирается внешний вид формы, стиль формы, и задается имя формы.
Любая форма, необходимая пользователю, может быть создана с помощью Конструктора. Кроме этого, с помощью этих форм можно производить вычисления, располагая в них вычисляемые поля. После выбора способа создания формы Конструктор появляется окно формы. В этом окне, разбитом на клетки, содержится лишь Область данных. Также форма может содержать область заголовка, примечания и нижний и верхний колонтитулы. Для добавления этих областей команды меню – Вид – Заголовок – Примечание формы и Вид – Колонтитулы. Справа и снизу расположены полосы прокрутки. Область формы, в которой производится построение, можно изменить, перетаскивая правую и нижнюю границы указателем мыши.
Для разработки собственно формы необходимо вывести на экран панель инструментов меню – Вид – Панель элементов.
В панели инструментов содержится множество элементов управления: надписи, поля, поля со списком, кнопки, флажки, переключатели и т.д.
Кнопка |
Назначение |
Выбор объектов |
Осуществляет выделение элемента управления, раздела или формы |
Мастера |
Включает/выключает мастер создания элементов управления (мастера создания полей со списком, группы параметров, кнопки, диаграммы и подчиненной формы) |
Надпись |
Позволяет разместить в форме текст в дополнению к размещенному по умолчанию в MS Access |
Поле |
Осуществляет отображение, ввод, изменение данных, содержащихся в источнике данных формы; вывод результатов вычислений; прием данных при их вводе пользователем. |
Группа переключателей |
Для размещения в группе флажков, переключателей или выключателей |
Выключатель |
Используется как отдельный элемент управления, связанный с логическим полем; как свободный элемент управления, принимающий действия пользователя в специальном окне диалога; как компонент группы параметров, в которой отображаются значения для выбора. |
Переключатель |
Используется аналогично Выключателю |
Флажок |
Используется аналогично Выключателю |
Поле со списком |
Составной элемент управления, объединяющий поле и раскрывающий список. Для ввода значения в поле исходной таблицы можно непосредственно ввести значение в поле или выбрать его из предопределенного списка. |
Список |
Создать список, допускающий прокрутку. В режиме формы выбранное из списка значение можно ввести в новую запись или использовать для замены уже существующего значения записи. |
Кнопка |
Позволяет осуществить разнообразные действия в форме |
Рисунок |
Осуществляет размещение рисунка, не являющегося объектом OLE |
Свободная рамка объекта |
Позволяет ввести свободный объект OLE, который остается неизменным при перемещении по записям |
Присоединенная рамка объекта |
Позволяет отобразить в форме объекты OLE. Предназначена для объектов, сохраненных в базовом источнике записей формы, поэтому при перемещении по записям в форме отображаются разные объекты. |
Разрыв страниц |
Указывает начало нового экрана формы |
Набор вкладок |
Используется для создания формы с несколькими вкладками |
Подчиненная форма/отчет |
Позволяет отобразить данные из нескольких источников |
Линия |
Размещает линию для отделения логически связанных объектов |
Прямоугольник |
Размещает прямоугольник для группировки элементов управления или выделения логически связанных объектов. |
Другие элементы |
Обеспечивает доступ к дополнительным элементам управления |
Любой из элементов, имеющихся на панели, можно перенести в форму. Размер и место располагаемого элемента в форме можно изменять. Для этого выделить элемент левой кнопкой мыши внутри него. Элемент выделится маркерами.
При работе с элементом Поле следует помнить, что это поле имеет присоединенную надпись, расположенную левее Поля, поэтому, располагая Поле, необходимо слева оставить место под Надпись.
В нашей базе данных с помощью Конструктора создадим форму, которая позволяет рассчитать заработную плату исполнителям по оказанным услугам (в таблице Расценка на заработную плату). Открыли вкладку Формы и выполнили команду Создание формы с помощью конструктора. Командой Вид – Заголовок – Примечание формы разместили в области формы соответственно заголовок и примечание. В области заголовка формы мы разместили надпись, переместили ее в центр Заголовка. Кнопкой Свойства вывели на экран набор свойств. Выделили поле, в котором должны находится расценка заработной платы и количество отработанных часов =[Поле9]*[Поле11].
При этом установили формат поля – основной. Назвали созданную форму Расценка на заработную плату.
Кроме простой формы существует многопользовательская. Она используется для того, чтобы просмотреть или редактировать данные, имеющие отношение 1 - ∞. При создании многотабличной формы необходимо выбрать вкладку Форма – Создать – Мастер форм. Внизу выбрать главную таблицу (Спрос на услуги салона). Далее в окне Создание форм перенести из таблиц Спрос на услуги салона все поля. Затем в левой стороне открыть подчиненную таблицу (Расценка на заработную плату) и также перенести все нужные поля – Далее. В следующем окне поставить флажок на подчиненные формы – Далее. После этого выбирается внешний вид подчиненной формы и стиль формы. В конце появляется составная форма, в которой отображены объединенные данные из таблиц Спрос на услуги салона и Расценка на заработную плату.
Запросы и фильтры к базе данных.
Цель работы:
Научиться создавать запросы в режиме Конструктора и Мастера.
Научиться создавать простой и расширенный фильтр.
Выполнение работы.
СОЗДАНИЕ ЗАПРОСОВ.
В режиме Конструктора.
Запрос – Создать – Конструктор. В открывшемся окне режима Конструктора в верхней части находиться схема данных запросов. Она содержит список таблиц и отображает связи между ними. В нижней части окна располагается бланки запросов. Такие как: строка поля – размещает те поля, которые используются для создания запроса; имя таблицы; сортировка; вывод на экран – следует установить флажок для просмотра поля; условия отбора – в этой строке вводится критерий поиска.
В режиме Мастера.
Запрос – Создать. В окне Новый запрос выбрать простой запрос – ОК. В следующем окне поле со списком Таблицы и запросы выбрать запрос, который будет служить источником данных. Перемещаем необходимые поля в поле Выбранные поля. Имя запроса – Готово.
Простой запрос.
Запрос – Создать – Простой запрос – в открывшемся окне Создание простых запросов из окна Доступные поля выбрать нужные – Далее – поставить флажок: открыть запрос в режиме просмотра данных – Готово.
Многотабличный запрос.
Запрос – Создать – Конструктор – в диалоговом окне «Добавление таблицы» выбрать требуемые. Эти таблицы и связи между ними будут отображены в верхней части окна конструктора запросов, в нижней части – бланк запросов. В бланке запросов выбрать в строке поле Вид услуги, а в строке условия отбора правой кнопкой мыши построить – выбираем оператора Like “[М – О]*” – ОК. Сохраняем запрос.
Итоговый запрос.
Конструктор запросов – Меню – Вид – Групповые операции. Мы посчитали сумму заработной платы с помощью оператора Sum.
СОЗДАНИЕ ФИЛЬТРОВ.
Фильтр по выделенному фрагменту.
Открыть таблицу в режиме Таблица. Выделить в столбце Вид услуги - маникюр. Правая кнопка мыши – Фильтр по выделенному.
Фильтр для.
Открыть таблицу в режиме Таблица. Правой кнопкой мыши щелкнуть по полю, в котором указали условия отбора - >25. Вносим значения в условия отбора Фильтр для - Enter.
Расширенный фильтр.
Открыть таблицу в режиме Таблица. Меню – Записи – Фильтр – Расширенный фильтр. В окне расширенного фильтра в верхней части расположен список полей фильтруемой таблицы, а в нижней – бланк формирования выражения для фильтра. Выбрали поле Расценка услуги; условие отбора - > 100. Для сохранения фильтра – Файл – Сохранить как запрос.
Вывод: мы научились создавать запросы в режиме Конструктора и Мастера, а также создавать простой и расширенный фильтр.
Модули.
Цель работы:
Разработать форму и модуль для выполнения расчетов по отдельной таблице собственной базы данных.
Разработать форму и модуль для решения задачи, полученной у преподавателя.
Выполнение работы.
Модуль представляет собой набор описаний и процедур на языке VB для приложений, сохраненных в одном программном блоке.
По собственной базе данных.
Выбираем режим Формы. Форма – Создать – Режим Конструктора. С помощью панели элементов создаем графический интерфейс. Выбираем панель элементов – Кнопка и растягиваем в любом месте. Для написания программы щелкнем на кнопку. Правая кнопка мыши – свойства кнопки – обработка событий. В окне VB редактора выбрать объект Кнопка. Далее напишем программу для вычисления заработной платы для одной из наших таблиц.
По базе данных, полученной у преподавателя.
Сотрудникам фирмы предоставляется возможность покупки товаров по беспроцентному кредиту. Известны следующие значения: срок кредита в мес., сумма 1-го взноса, стоимость товара. Определить сумму ежемесячных кредитных выплат. Разработать интерфейс формы и написать программу в окне VB.
Подготовка отчетов
Цель работы:
Научиться разрабатывать отчет с помощью Конструктора на основе одной таблицы.
Научиться разрабатывать отчет по данным нескольких таблиц, содержащий наглядную информацию о сведениях, хранящихся в базе данных.
Выполнение работы.
СОЗДАНИЕ ОТЧЕТА В РЕЖИМЕ КОНСТРУКТОРА.
Создание отчетов в режиме Конструктора во многом совпадает с созданием формы. Обычно все отчеты содержат заголовок отчета и итоговую часть отчета.
В окне базы данных выбрать вкладку Отчеты.
Нажать кнопку Создать на панели инструментов.
В появившемся диалоговом окне выбрать способ создания отчета (Конструктор), имя таблицы или запроса, где содержаться данные, по которым строится отчет.
Нажать кнопку ОК. На экране появится отчет в режиме Конструктора.
Из списка полей выбранной таблицы мышью перетащить нужные поля в области отчета (если на экране отсутствует список полей, нажмите кнопку Список полей).
Созданный отчет можно увидеть в режиме просмотра.
СОЗДАНИЕ ОТЧЕТА НА ОСНОВЕ НЕСКОЛЬКИХ ТАБЛИЦ С ПОМОЩЬЮ МАСТЕРА.
Для создания отчета на основе нескольких таблиц необходимо предварительно создать запрос, содержащий необходимую информацию, а затем на основе него строить отчет.
Сначала построить запрос, содержащий указанные данные.
Выбрать команду Создать отчет с помощью Мастера.
В открывшемся диалоговом окне выбрать созданный запрос и нужные поля (или таблицу и поля из нее).
Затем выбрать вид представления данных, уровни группировки, порядок сортировки, вид макета, стиль отчета, задать имя отчета, Готово.
АВТООТЧЕТ.
1.В окне базы данных выбрать вкладку Отчеты.
2.Нажать кнопку Создать на панели инструментов.
В появившемся диалоговом окне выбрать способ создания отчета (Автоотчет), имя таблицы , ОК.
ПОЧТОВЫЕ НАКЛЕЙКИ.
Сначала построить запрос, содержащий указанные данные.
Выбрать команду Создать- Почтовые наклейки..
Затем выбрать вид представления данных, уровни группировки, порядок сортировки, вид макета, стиль отчета, задать имя отчета, Готово.
ДИАГРАММА.
Сначала построить запрос, содержащий указанные данные.
Выбрать команду Создать- Мастер диаграмм..
Затем выбрать вид диаграммы, уровни группировки, порядок сортировки, доступные поля, задать имя отчета, Готово.
Вывод: мы научились разрабатывать отчет с помощью Конструктора на основе одной таблицы и отчет по данным нескольких таблиц, содержащий наглядную информацию о сведениях, хранящихся в базе данных.