Министерство сельского хозяйства  Российской Федерации

Департамент кадровой политики и образования

Мичуринский государственный аграрный университет

 

 

Кафедра информатики

 

 

 

Основы работы в

СУБД MS Access

             

Методическое пособие

для самостоятельной работы студентов

 

 

Мичуринск 2003

 

Методическое пособие составлено ассистентом кафедры информатики Маковой Н.Е.  и доктором физ-мат наук, профессором Аникьевым А.А.   на основании типовой учебной программы для высших сельскохозяйственных учебных заведений по специальности 060900 – Экономика и управление аграрным производством / Москва – Издательство МСХА, 1996 г. Государственный образовательный стандарт высшего профессионального образования: специальность 060400 – Финансы и кредит, квалификация: экономист; специальность 060500 – Бухгалтерский учет, анализ и аудит, квалификация: экономист; специальность 060800- Экономика и управление на предприятиях (по отраслям), квалификация: экономист- менеджер./ Министерство образования Российской Федерации,   2000 г.

 Рецензент:  ст. преп. кафедры менеджмента и моделирования экономических процессов Ширяева Г.Б.

 Рассмотрена на заседании кафедры информатики

Протокол № _____ от __________ 2003г.

 СОДЕРЖАНИЕ

 

Понятие базы данных

3

Упр. 1. Создание БД.  Ввод и форматирование данных

6

Упр. 2. Редактирование БД

11

Упр. 3. Поиск данных по условию

13

Упр. 4. Использование Формы для просмотра и редактирования записей

19

Упр. 5. Печать данных с помощью Отчетов

22

Упр. 6. Работа со связанными таблицами

23

Упр. 7. Зачетное задание

28

Контрольные вопросы

29

  Литература

1.     Угринович Н.Д. Информатика и информационные технологии. – М.: Лаборатория Базовых Знаний, 2000.- 440 с.: ил.

2.     Симонович С.В. Информатика: Базовый курс/Питер, 2001 г. – 640 с.

3.     Шафрин Ю.А. Информационные технологии: В 2 ч. – М.: Лаборатория Базовых Знаний, 2001. – 336 с.

 

Понятие базы данных

 

Что такое база данных? Любой из нас, начиная с раннего детства, многократно сталкивался с "базами данных". Это – всевозможные справочники (например, телефонный), энциклопедии и т.п. Записная книжка – это тоже "база данных", которая есть у каждого из нас.

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

Например, база данных "Записная книжка" хранит информацию о людях, каждый из которых имеет фамилию, имя, телефон и т.д. Библиотечный каталог хранит информацию о книгах, каждая из которых имеет название, автора, год издания и т.д.

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

База данных (БД) – это информационная модель, позволяющая упорядоченно хранить данные о группе объектов, обладающих одинаковым набором свойств.

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

Табличную базу данных удобно представить в виде двумерной таблицы: в каждой ее строке последовательно размещаются значения свойств одного из объектов; каждое значение свойства – в своем столбце, озаглавленном именем свойства.

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

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

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

Ключевое поле – это поле, значения которого однозначно определяют каждую запись в таблице.

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

 Тип поля определяется типом данных, которое оно содержит. Поля могут содержать следующие основные типы данных:

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

·        Текстовый. Содержит до 255 символов.

·        Числовой. Содержит числа.

·        Дата/Время. Содержит дату или время.

·        Денежный. Содержит числа в денежном формате.

·        Логический. Содержит значения Истина (Да) или Ложь (Нет).

·        Гиперссылка. Содержит ссылку на информационный ресурс в Интернете.

Каждый тип поля имеет свой набор свойств. Наиболее важными свойствами полей являются:

1.     Размер поля. Определяет максимальную длину текстового или числового поля

2.     Формат поля. Устанавливает формат данных

3.     Обязательное поле. Указывает на то, что данное поле обязательно надо заполнить.

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

Система управления базами данных (СУБД) – это программа, позволяющая создавать базы данных, а также обеспечивающая обработку (сортировку) и поиск данных.

Все СУБД поддерживают в той или иной форме четыре основных операции:

·   добавить в базу данных одну или несколько записей;

·   удалить из базы данных одну или несколько записей;

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

·   обновить в базе данных значение некоторых полей.

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

MS Access является СУБД реляционного типа, в которой разумно сбалансированы все средства и возможности, типичных для современных СУБД. Реляционная база упрощает поиск, анализ, поддержку и защиту данных, поскольку они сохраняются в одном месте. Access в переводе с английского означает «доступ». MS Access — это функционально полная реляционная СУБД. Кроме того, MS Access одна из самых мощных, гибких и простых в использовании СУБД. В ней можно создавать большинство приложений, не написав ни единой строки программы, но если нужно создать нечто очень сложное, то на этот случай MS Access предоставляет мощный язык программирования — Visual Basic Application.

В этой работе мы предлагаем набор заданий, которые позволят освоить основные приемы работы с СУБД Access.

Запустить систему Access можно несколькими способами:

·         запуск с помощью главного меню в WINDOWS;

·         запуск с помощью ярлыка на рабочем столе или панели MS Office;

·         открытие какой-либо базы данных автоматически запускает Access.

 В Access используется стандартный для среды Windows&Office многооконный интерфейс, но в отличие от других приложений, не многодокументальный. Единовременно  может быть открыта только одна база данных, содержащая обязательное окно базы данных и окна для работы с объектами. В каждый момент времени одно из окон является активным и в нем курсором отмечен активный объект.

Окно базы данных – один из главных элементов интерфейса Access. Здесь систематизированы все объекты БД: таблицы, запросы, формы, отчеты, макросы и модули.

Дадим краткую характеристику всем объектам БД.

Таблицы. В базах данных вся информация хранится в двумерных таблицах. Это базовый объект БД, все остальные объекты создаются на основе существующих таблиц (производные объекты).

Запросы. В СУБД запросы являются важнейшим инструментом. Главное предназначение запросов – это отбор данных на основании заданных условий. С помощью запроса из базы данных можно выбрать информацию, удовлетворяющую определенным условиям.

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

Отчеты. Они предназначены для печати данных, содержащихся в таблицах и запросах, в красиво оформленном виде.

Макросы. Макросы служат для автоматизации повторяющихся операций. Запись макроса производится также как в других приложениях, например, как в приложении Word.

Модули. Они также служат для автоматизации работы с БД. Модули еще называют "процедурами обработки событий" и пишут на языке VBA.

  

Упражнение 1

Создание базы данных. Ввод и форматирование данных

1.           Загрузите СУБД ACCESS. Появится следующее окно запроса:

 

Создадим новую базу данных. Выберите соответствующий пункт и нажмите ОК.

Создать в приложении Access новую базу данных можно также с помощью меню [Файл – Создать …].

 

2.           В окне "Создание" на вкладке Общие выберите "База данных".

 

 

3.           Сохраните файл под именем skaz.mdb. Перед вами появилось диалоговое окно «skaz: база данных».

4.           Внимательно прочитайте назначение кнопок на панели инструментов, медленно перемещая курсор мыши по кнопкам.

5.           После этого создайте таблицу в режиме конструктора, выбрав соответствующий пункт в окне "skaz: база данных". Режим Конструктор позволяет создавать и изменять структуру таблицы.
Создание таблицы, то есть определение входящих в таблицу полей, производится заполнением специальной таблицы:

   Имя поля   

Тип данных

Описание

 

 

 

 

 

 

 

6.           Заполните такую таблицу, внеся в нее следующие данные:

Имя поля

Тип данных

Описание

Счетчик

 

Персонаж

Текстовый

 

Профессия

Текстовый

 

Особые приметы

Текстовый

 

Герой

Логический

Положительный
или отрицательный герой

7.           Поле не обязательное, мы его вводим для того, чтобы определить ключевое поле, так как любая таблица должна иметь ключ: выделите первую строку и нажмите кнопку  на панели инструментов или выберите пункты меню [Правка - Ключевое поле]

8.           Созданную таблицу нужно сохранить, дав ей имя с помощью команд: [Файл - Сохранить], имя таблицы: «Персонаж».

9.           После создания таблицы, ее имя добавляется в окно базы данных и ее можно легко открыть либо в режиме Конструктор (кнопка Конструктор), либо в режиме Таблица (кнопка Открыть).

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

Войдите в созданную таблицу "Персонаж" (2 щелчка) и обычным образом введите данные, например такие:

  

Персонаж

Профессия

особые приметы

герой

1

Буратино

деревянный человечек

длинный нос

Да

2

Папа Карло

Шарманщик

 

Да

3

Карабас Барабас

директор кукольного театра

длинная борода, достающая до пола

Нет

4

Лиса Алиса

Мошенница

хромая на одну ногу

Нет

5

Кот Базилио

Мошенник

слепой на оба глаза

Нет

6

Мальвина

артистка театра

девочка с голубыми волосами

Да

7

Дуремар

Фармацевт

характерный запах тины

Нет

8

Тортилла

хранительница золотого ключика

черепаха

Да

10.       При помощи мыши выделите:
а) запись 5,
б) запись 3,
в) с третьей по седьмую запись. Отмените выделение.
г) Выделите все записи. Отмените выделение.
д) Выделите поле «Персонаж».
е) Выделите одновременно поля: «Профессия», «Особые приметы» и «Герой», отмените выделение.
ж) Выделите все поля. Это можно сделать при помощи мыши или меню [Правка - Выделить все записи].

11.       Отмените выделение.

12.       Выделите:
а) В поле «Особые приметы» отметьте шестую запись.
б) В поле «Персонаж» выделите с четвертой по шестую запись.
в) Не отпуская кнопку мыши, отметьте эти же записи в полях «Особые приметы» и «Герой».

13.       Отмените выделение.

14.       Выделите всю таблицу.

15.       Отмените выделение.

16.       Измените ширину каждого столбца, так чтобы ширина колонок была минимальной, но был виден весь текст. Это можно сделать при помощи мыши, раздвинув столбцы или следующим образом. Выделите нужный столбец и нажмите правую кнопку мыши, в контекстном меню выберете команду "Ширина столбца"; в открывшемся окне нажмите кнопку "По ширине данных". Проделайте такую же работу со всеми полями. Высоту строки можно изменить аналогичным образом с помощью мыши или в меню [Формат - Высота строки]. Причем достаточно отредактировать одну строку, высота остальных строк изменяется автоматически.

17.       Любым способом измените высоту строки и сделайте ее равной 30.

18.       Измените шрифт таблицы на Arial, размер шрифта 12, полужирный.
Изменить шрифт можно с помощью меню [Формат – Шрифт].

19.       Измените шрифт текста на Times New Roman, обычный, размер шрифта 10.

20.       Измените ширину полей.
а) Сделайте столбец «Профессия» шириной 30.
б) Столбец «Особые приметы» шириной 25.
Вы видите, что текст в этих полях напечатался в две строки.

21.       Подгоните ширину столбцов так, чтобы текст вмещался полностью.

22.       Выполните сортировку таблицы по полю «Персонаж» в порядке, обратном алфавитному. Это можно сделать так. Выделите поле «Персонаж» и нажмите кнопку "Сортировка по убыванию" на панели инструментов.

23.       Верните таблицу в исходное состояние. (Отсортируйте столбец "№" по возрастанию).

24.       Сохраните таблицу «Персонаж».

25.       Закройте таблицу «Персонаж».

Упражнение 2

Редактирование базы данных

1.           Откройте таблицу «Персонаж» и добавьте в конец таблицы следующие записи:

Персонаж

Профессия

особые приметы

герой

1

Артемон

Пудель

очень умный пес

Да

2

Трактирщик

хозяин таверны "Три пескаря"

жаден и скуп

Нет

2.           Это можно сделать тремя способами:
а) Передвинуть курсор в конец таблицы и ввести новые записи.
б) На панели инструментов нажать кнопку "Новая запись".
в) С помощью меню [Записи - Ввод данных].

3.           Скопируйте первую запись на место шестой записи.

4.           Удалите пятую запись.

5.           Скопируйте первую запись в конец таблицы.

6.           Измените профессию Дуремара на "продавец пиявок". Это можно сделать так: отметить курсором мыши запись фармацевт, удалить ее в буфер и с клавиатуры ввести продавец пиявок. Или следующим способом: открыть меню [Правка - Заменить…]. На экране появится диалоговое окно замены. Ввести формат замены.

7.           Замените во всей таблице Буратино на Пиноккио. (Прежде выделите весь столбец "Персонаж")

8.           Удалите три записи, значение которых в поле «Персонаж» = Пиноккио.

9.           Вставьте следующую запись:

Персонаж

Профессия

особые приметы

герой

1

Пьеро

артист театра

грустные глаза

Да

10.       Удалите с седьмой по десятую записи.

11.       Удалите поле «Профессия». Это можно сделать с помощью мыши, соединив границы полей «Персонаж» и «Особые приметы» или в меню [Правка - Удалить столбец].

12.       Вставьте новое поле в таблицу.

Поле

Тип данных

Описание

Дата

Числовой

Условная дата рождения (целое число)

13.       Чтобы вставить новое поле в таблицу, нужно перейти в окно базы данных, выделить "Персонаж" и нажать кнопку Конструктор. В открывшемся окне поставьте курсор на ту строку, перед которой вам необходимо вставить запись. Выберите пунк меню [Вставка - Строки] или нажмите кнопку "Добавить строки"  на панели инструментов и введите нужные данные. Закройте режим конструктора и войдите в таблицу "Персонаж".

14.       Самостоятельно заполните новое поле в каждой записи.

15.       Во всей таблице замените слог но на слог ни. Для этого в любой записи таблицы необходимо отметить слог но. Затем в меню Правка выберите команду Заменить, и введите формат замены.

16.       Замените в таблице все буквы о на букву а, а затем все буквы а замените на букву о.

17.       Замените на слог РА буквосочетание, первая буква которого р, а вторая — любая буква русского алфавита. Это можно сделать следующим образом: в меню [Правка – Заменить] ввести формат замены. Заменить р? на РА.

18.       Закройте таблицу "Персонаж", не сохраняя внесенных изменений.

Упражнение 3

Поиск данных по условию

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

3.1. Поиск данных с помощью Фильтров

Большие возможности для поиска данных в БД предоставляют Фильтры. Фильтры позволяют отбирать записи, которые удовлетворяют заданным условиям. Условия отбора записей создаются с использованием операторов сравнения (=, >, < и т.д.).

Простые фильтры содержат условие отбора записей только для одного поля. Сложные фильтры содержат несколько условий для различных полей. В результате применения сложного фильтра будут отобраны только те записи, которые удовлетворяют всем условиям одновременно. Можно сказать, что условия в сложных фильтрах связаны между собой операцией логического умножения (И).

Для того чтобы создать фильтр, нужно выполнить следующую последовательность действий:

1)     Открыть нужную таблицу Таблица — Класс — Открыть.

2)     На панели инструментов нажмите кнопку Изменить фильтр  (или меню [Записи – Фильтр – Изменить фильтр], и с помощью построителя выражений введите условия запроса. Если вы хотите сохранить данный набор записей, то выполните команду [Файл – Сохранить как запрос]

3)     Затем на панели инструментов Запроса нажмите кнопку Применить фильтр .(или меню [Фильтр - Применить фильтр]). В результате на экране появится динамический набор записей, удовлетворяющих введенному условию.

3.2. Поиск данных с помощью Запросов

Запросы осуществляют поиск данных в БД так же, как и Фильтры. Различие между ними состоит в том, что Запросы являются самостоятельными объектами БД, а Фильтры привязаны к конкретной таблице.

Запрос является производным объектом от таблицы. Однако, результатом выполнения запроса является также таблица, т.е. запросы могут использоваться вместо таблиц. Например, форма может быть создана как для таблицы, так и для запроса.

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

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

Для того чтобы создать запрос, нужно выполнить следующую последовательность действий:

1)     В окне "skaz: база данных" выделить группу объектов Запросы и выбрать пункт Создание запроса в режиме конструктора.

2)     На диалоговой панели Добавление таблицы выбрать таблицу Класс, для которой создается запрос. Щелкнуть по кнопке Добавить, затем Закрыть.

3)     В окне запроса в строке Поле: из раскрывающегося списка выбрать имена полей, в которых будут заданы условия.

В строке Условие отбора: ввести условия для выбранных полей.

В строке Вывод на экран: задать поля, которые будут представлены в запросе.

4)     Сохранить запрос с помощью команды [Файл – Сохранить как…].

5)     В окне "skaz: база данных" выделить созданный запрос и щелкнуть по кнопке Открыть. В появившемся окне запроса будут введены записи, удовлетворяющие условиям поиска.

Для того чтобы ответить на все предлагаемые вопросы, необходимо знать операторы задания шаблонов. Приведем несколько примеров.

 Примеры использования символов задания шаблонов

Использование символов

Образец

Поиск в Microsoft Access

Вопросительный знак ( ? ); в качестве шаблона для любого символа.

За?ор

Забор
Затор

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

Д*нь

День
Добрый день
Длинная тень

Звездочка ( * ); в качестве шаблона для любой группы начальных символов.

128й
Последний

Знак фунта (#); в качестве шаблона для любой цифры.

#-й

5-й
8-й

Восклицательный знак ( ! ) после первой скобки;
для поиска символа, который не входит в указанный набор символов.

Иванов[!аы]

Иванову
[но не Иванова или Ивановы]

 Примеры условных выражений

Условные выражения

Вывод записей, которые

Саратов

имеют значение Саратов

Not Саратов

не имеют значение Саратов

In (Саратов, Томск, Уфа)

имеют значение Саратов, Томск или Уфа

начинаются с букв А-Л

>=М

начинаются с букв М-Я

100

имеют числовое значение 100

<=20

имеют числовое значение до 20

Date( )

имеют значение текущей даты

>=01.01.94

имеют значение даты позднее 01.01.94

Beetween 01.01.93 AND 31.12.93

имеют значение года 1993

*.02.*

имеют значение месяца Февраль

Null

содержат в поле пустое значение

Is Not Null

имеют не пустое значение в поле

Like "Р*"

начинаются с буквы Р

 

 

1.           В базе данных skaz.mbd создайте с помощью конструктора новую таблицу «Класс» и внесите в нее следующие поля.

Поле

Тип данных

Описание

Счетчик

 

Фамилия

Текстовый

 

Имя

Текстовый

 

Дата

Дата

Дата рождения

Пол (м)

Логический

Пол мужской?

Улица

Текстовый

 

Дом

Числовой

 

Квартира

Числовой

 

Класс

Числовой

 

Группа

Текстовый

Группа здоровья по физкультуре

Хобби

Текстовый

 

Глаза

Текстовый

Цвет глаз

 

2.           Заполните таблицу.

Фамилия

Имя

Дата

пол

Улица

Дом

Кв.

Класс

Группа

Хобби

Глаза

1

Суханов

Сергей

16.02.81

Да

Чердынская

23

74

10

основная

тяжелая атлетика

зеленые

2

Пирогов

Юрий

5.12.83

Да

Куйбышева

6

31

8

основная

футбол

голубые

3

Лебедева

Света

16.06.85

Нет

Пушкина

37

65

6

специальная

вязание

карие

4

Голдобин

Сергей

23.05.88

Да

Леонова

12

10

3

основная

лыжи

голубые

5

Ельшина

Наташа

24.05.82

Нет

Чердынская

37

48

9

специальная

чтение

серые

6

Суханова

Наташа

20.12.86

Нет

Ленина

12

22

5

подготовительная

шитье

зеленые

7

Петрова

Света

18.04.82

Нет

Пушкина

37

3

9

основная

лыжи

серые

8

Горина

Оля

20.12.84

Нет

Свиязева

66

99

7

подготовительная

аэробика

карие

9

Попов

Михаил

7.07.87

Да

Леонова

72

6

4

подготовительная

 

голубые

10

Сергеев

Саша

30.11.89

Да

Куйбышева

3

31

2

основная

каратэ

зеленые

11

Павлова

Елена

13.12.85

Нет

Пушкина

5

6

6

основная

аэробика

карие

12

Емельянова

Наташа

25.05.81

Нет

Попова

40

47

10

основная

шитье

зеленые

13

Евдокимов

Михаил

18.08.80

Да

Чердынская

3

40

7

основная

футбол

зеленые

14

Евсеева

Елена

14.10.84

Нет

Ленина

14

82

9

основная

лыжи

серые

15

Суханова

Света

29.07.80

Нет

Куйбышева

37

32

11

основная

аэробика

карие

 

Ответьте на вопросы, создавая Фильтры

1.           Кто учится в 8 классе?

2.           Кто родился в 1994 году?

3.           Кто живет на улице Пушкина?

4.           У кого номер дома меньше 50?

5.           У кого фамилия начинается на букву С?

6.           Кто закончит школу в этом году?

7.           У кого сегодня день рождения?

8.           У кого номер квартиры меньше 12?

9.           Кто не определил свое хобби?

10.       Кто родился до 1.01.95?

11.       У кого фамилия начинается с букв А-К?

12.       Кто является однофамильцами с Сухановым Сергеем?

13.       Кто увлекается аэробикой и лыжами?

14.       Кто из мальчиков живет на улице Чердынской?

15.       У кого имена начинаются на букву С, а фамилия — на букву П?

16.       У кого карие глаза и этот человек не умеет вязать?

17.       Кто учится в старших классах?

Ответьте на вопросы, создавая Запросы

1.           Кто не занимается тяжелой атлетикой?

2.           У кого мужские имена?

3.           Кто родился весной?

4.           Кто живет на улице Пушкина, Леонова или Свиязева?

5.           У кого из специальной группы женское имя?

6.           Кто не живет на улице Ленина и не занимается в подготовительной группе?

7.           Кто из мальчиков с голубыми глазами занимается каратэ?

8.           У кого номер класса кратен 3, и он живет на улице Пушкина или Ленина?

9.           Кто с серыми глазами учится в классе с нечетным номером, или родился 13-го числа?

10.       У кого номер класса < 5, или специальная группа, и его имя начинается на Н?

11.       Кто из основной группы не живет на улице Пушкина или Ленина?

12.       Кто из девочек, родившихся в мае или в декабре, имеет номер дома больше 36?

13.       У кого из основной группы имя начинается на буквы С или М, но фамилия не начинается на букву П?

Упражнение 4

Использование Формы для просмотра и редактирования записей.

Записи БД можно просматривать и редактировать в виде Таблицы или в виде Формы. Выше мы работали с базами данных, представленными в виде таблицы, когда запись образует строку в этой таблице. Такое представление БД позволяет наблюдать несколько записей одновременно, и в этом состоит достоинство табличного представления.

Однако часто вид Таблица не позволяет видеть полностью всю информацию на экране. Если БД содержит достаточно много полей, а значения полей содержат много символов, то не все поля таблицы могут умещаться на экране, а значения полей могут быть видны не полностью.

Форма одновременно отображает одну запись в удобном для пользователя виде. В процессе создания формы, можно указать, какие поля БД включить в форму, как расположить поля в окне формы, а также как можно сделать форму визуально привлекательной.

Фактически с помощью Формы создается графический интерфейс доступа к БД, который может содержать различные управляющие элементы (текстовые поля, кнопки, переключатели и т.д.), а также надписи. Обычно на Форме размещаются надписи, являющиеся именами полей БД, и текстовые поля, содержащие данные из БД.

Пользователь может изменять дизайн формы (размер, цвет и т.д.) управляющих элементов и надписей.

Примером Формы является Карточка в БД "Библиотечный каталог". Она содержит только запись БД, представленную, однако, в удобном для пользователя виде (название книги, автор, год издания и т.д.).

Создание Формы можно проводить различными способами с использованием:

§       Конструктора (сложный путь), который позволяет начать создание формы с нуля.

§       Мастера форм (более простой путь), который с помощью серии диалоговых окон помогает пользователю в создании формы.

Создадим Форму для БД "Класс" с помощью мастера форм.

 

1.     В окне "skaz: база данных" выберите группу объектов Формы. Выберите пункт Создание формы с помощью мастера

2.     На появившейся панели Создание форм выбрать в окне Таблицы и запросы исходную таблицу "Класс", а в окне Доступные поля выбрать поля для Формы (можно воспользоваться кнопками . – для выбора одного поля,   - для выбора сразу всех полей). Щелкнуть по кнопке Далее.

3.     На появившейся следующей панели с помощью переключателей выбрать способ размещения полей на Форме (например, в один столбец).

4.     Далее выбрать один из предложенных стилей оформления Формы (например, Рисовая бумага). Затем задать имя Формы (например, Карточка).

5.     В результате появится окно формы "Карточка", которое содержит надписи (название полей БД) и текстовые поля для ввода их значений, расположенные в 2 столбика.

6.     После открытия Форма содержит запись №1. При работе с Формой для перехода от одной записи к другой необходимо воспользоваться панелью Запись, которая находится в нижней части окна формы. Панель Запись содержит кнопки со стрелками, щелчки по которым позволяют перемещаться по записям, а также поле номера записи, позволяющее ввести номер искомой записи.

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

7.     В окне "skaz: база данных" выделите форму Карточка и щелкните по кнопке Конструктор. В появившемся окне с помощью мыши измените местоположение, размеры надписей и текстовых полей.

8.     В окне"skaz: база данных" выделите форму Карточка и щелкните по кнопке Открыть, появится обновленная форма.

Теперь Форма для БД "Класс" готова. С ее помощью можно просматривать записи. Редактировать их или вводить новые.

9.      С помощью мастера самостоятельно создайте Форму для таблицы «Персонаж».

 

Упражнение 5

Печать данных с помощью Отчетов

Можно осуществлять печать непосредственно таблиц, форм и запросов с помощью команды [Файл - Печать]. Однако для красивой печати документов целесообразно использовать Отчеты. Отчеты являются производными объектами БД и создаются на основе таблиц, форм и запросов.

Создадим отчет, который будет красиво распечатывать БД "Класс". Воспользуемся для этого Мастером отчетов.

1.     В окне "skaz: база данных" выделить группу объектов Отчеты и выбрать пункт Создание отчета с помощью мастера.

2.     С помощью серии диалоговых окон задать параметры внешнего вида отчета.

3.     В окне "skaz: база данных" щелкнуть по кнопке Просмотр. Появится документ в том виде, в котором он может быть распечатан.

 

  

Упражнение 6

Работа со связанными таблицами

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

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

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

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

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

Базы данных, состоящие из связанных двумерных таблиц. Принято называть реляционными.

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

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

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

1.     Создать в приложении Access новую базу данных с помощью команды [Файл – Создать базу данных…] и присвоить ей имя "Компьютеры".

2.     В окне "Компьютеры: база данных" перейти на группу объектов Таблицы и выбрать пункт Создание таблицы в режиме конструктора.

Таблица "Комплектующие" должна содержать три текстовых поля: Код комплектующих, Наименование и Описание. Ключевым полем является поле Код комплектующих.

3.     В окне "Таблица1: таблица" ввести имена полей, тип данных и параметры полей.

 

 

4.     Для ввода данных в таблицу щелкнуть на значке Комплектующие. Ввести данные в таблицу. 

 

 

5.     Создайте и заполните таблицу "Поставщики", которая должна содержать три текстовых поля Код поставщика, Название фирмы и Адрес. Ключевым полем является Код поставщика.

 

 

6.     Аналогично создайте и заполните таблицу "Цена", которая должна содержать поля Счетчик, Код комплектующих, Код поставщика, а также поле Цена. В качестве ключа этой таблицы будет использоваться поле Счетчик.

 

 

Таблицы "Комплектующие" и "Поставщики" должны быть связаны отношением "один-ко-многим" с таблицей "Цена".

Установим связи между таблицами с помощью окна "Схема данных"

7.     Ввести команду [Сервис – Схема данных] или нажать кнопку на панели инструментов . Появится диалоговая панель Добавить таблицу. Выделить в этом окне нужные таблицы и нажать кнопку Добавить.

8.     Выделенные таблицы будут добавлены в специальное окно – "Схема данных".

Для реализации между таблицами "Комплектующие" и "Поставщики" связи в отношении "многие-ко-многим" необходимо связать их с таблицей "Цена" в отношении "один-ко-многим".

9.     Перетащим мышкой из таблицы "Комплектующие" ключевое поле – Код комплектующих к одноименному полю внешнего ключа таблицы "Цена".

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

 

 

Теперь установим связь в отношении "один-ко-многим" между таблицами "Поставщики" и "Цена".

11. Перетащим мышкой из таблицы "Поставщики" ключевое поле – Код поставщика к одноименному полю внешнего ключа таблицы "Цена".

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

 

Теперь связь в отношении "многие-ко-многим" между таблицами "Комплектующие" и "Поставщики" через таблицу "Цена" установлена. Это наглядно представлено в окне "Схема данных".

Созданная реляционная база данных "Компьютеры" состоит из трех связанных таблиц и поэтому обладает целостностью данных. Это значит, что можно создавать запросы, формы и отчеты, которые используют данные из разных таблиц.

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

13. В окне "Компьютер: база данных" среди объектов выберите Запросы и создайте запрос в режиме Конструктора.

14. В таблице "Комплектующие" для поля Код комплектующих ввести условие равно "k1", в таблице "Поставщики" для поля Название установить вывод на экран, в таблице "Цена" для поля Цена ввести условие <9500.

15. На вкладке Запросы нажать кнопку Открыть. Появится результат выполнения запроса.

  

Упражнение 7

Зачетное задание

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

 

Автор

Название

Год издания

Худож?

Издательство

Гамильтон, Э.

Возвращение к звездам

1992

Да

"Селена"

Гамильтон, Э.

Оружие извне

1995

Да

"Армада"

Уильямсон, Д.

Звездный легион

1994

Да

"Армада"

Шарф, Д.

Основы HTML

1997

Нет

"Питер"

Сборник

Лучшие игры для IBM

1994

Нет

"Питер"

Сборник

Java: 1001 совет

1998

Нет

"Попурри"

Пономаренко, С.

Adobe Photoshop 3.0

1995

Нет

BHV

Пономаренко, С.

Corel Draw 5.0

1995

Нет

BHV

Сборник

Delphi 2 в примерах

1996

Нет

BHV

 

2.     Добавьте по своему усмотрению еще несколько строк.

3.     Создайте запросы:

1)     указав все нехудожественные произведения, вышедшие после 1995 года;

2)     указав авторов произведений, содержащих в заглавии слова "звезда", "межзвездный" и пр.

4.     Создайте формы, которые позволяют просмотреть информацию о книгах.

5.     Создайте отчет по второму запросу.

Контрольные вопросы

 

1.     Что такое БД? СУБД?

2.     Какие окна могут открываться в окне приложения Access?

3.     Что такое поле БД?

4.     Что такое запись БД?

5.     Что такое ключевое поле БД?

6.     Охарактеризуйте основные типы данных полей.

7.     Перечислите свойства полей.

8.     Дайте краткую характеристику каждому из объектов БД. Какие из них являются базовыми, а какие – производными?

9.     Чем отличаются простые Фильтры от сложных?

10. Что означают символы ?, *, # в шаблонах условных выражений?

11. Каковы основные достоинства и недостатки Таблицы?

12. Каковы основные достоинства и недостатки Формы?

13. Какие способы существуют для вывода данных из БД на печать? Чем они отличаются?

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

15. Какие типы связей между таблицами возможны в реляционных базах данных?

16. Что называется реляционной базой данных?

Сайт управляется системой uCoz