- •11 Класс Практикум к главе 1 «Информационные системы»
- •Раздел 1. Системология
- •Задание 1. Модель «черного ящика»
- •Задание 2. Модель состава системы
- •Вариант 1
- •Вариант 2
- •Вариант 1.
- •Вариант 1. Биологическая классификация
- •Вариант 2. Классификация в русском языке
- •Темы для рефератов по разделу «Системология»
- •Раздел 2. Базы данных
- •Работа 2.1. Знакомство с субд ms Access
- •Работа 2.4. Расширение базы данных
- •Темы для рефератов по разделу «Информационные системы и базы данных»
Раздел 2. Базы данных
УРОВЕНЬ 1: выполнение заданий по образцу
Работа 2.1. Знакомство с субд ms Access
Цель работы: освоение простейших приемов работы с готовой базой данных в среде СУБД MS Access:
открытие базы данных
просмотр структуры БД в режиме «Конструктор»
просмотр содержимого БД в режимах «Таблица» и «Форма»
добавление записей через форму
быстрая сортировка таблицы
использование фильтра
Используемые программные средства: MS Access.
Примечание: для выполнения этой работы предварительно должна быть подготовлена однотабличная база данных «ВИДЕОТЕКА», структура и содержание которой описаны в Приложении к данной работе, а также создана форма к этой таблице. В дальнейшем таблицу, в которой хранятся сведения о видеодисках, а также соответствующую форму будем называть «Видеодиски».
Справочная информация
Существуют СУБД, ориентированные на программистов и ориентированные на конечного пользователя. Любые действия, выполняемые с базой данных, производятся на ЭВМ с помощью программ. СУБД, ориентированные на программистов, фактически являются системами программирования со своим специализированным языком, в среде которых программисты создают программы обработки баз данных. Затем с этими программами работают конечные пользователи. К числу СУБД такого типа относятся FoxPro, Paradox и др.
СУБД Microsoft Access (MS Access) относится к системам, ориентированным на конечного пользователя. Она позволяет пользователю, не прибегая к программированию, легко выполнять основные действия с базой данных: создание, редактирование и манипулирование данными. MS Access работает в операционной среде Windows, может использоваться как на автономном ПК, так и в локальной компьютерной сети. С помощью Access создаются и эксплуатируются персональные базы данных, а также корпоративные БД с относительно небольшим объемом данных. Для создания крупных промышленных информационных систем MS Access не годится.
Среда Access (см. рис.3) имеет интерфейс, характерный для Windows-приложений и включает в себя следующие составляющие: титульную строку с кнопками управления окном, главное меню, панель инструментов, рабочее поле и строку состояния. На рабочем поле устанавливается окно, соответствующее выбранному режиму работы. На рис.6 открыто окно, соответствующее основному режиму – режиму работы с базой данных, подрежиму работы с таблицей. Как и для любого приложения, в Access существует иерархия режимов, о которой будет сказано далее.
Рис.3. Среда MS Access с окном базы данных на рабочем поле
Данные, с которыми работает СУБД, также могут быть выстроены в иерархическую последовательность. На верхнем уровне такой иерархии находятся основные объекты MS Access. К ним относятся: таблицы, запросы, формы, отчеты, макросы и модули.
Таблица – это главный тип объекта. Все остальные разновидности объектов являются производными от таблицы. Элементы данных, составляющих таблицу - это записи и поля. Свойства элементов таблицы определяются типами, форматами полей и некоторыми другими параметрами.
Форма – это вспомогательный объект, без которого, в принципе, можно обойтись. Формы создаются для повышения удобства пользователя при просмотре, вводе и редактировании данных в таблицы.
Запрос – результат обращения пользователя к СУБД для поиска данных, добавления, удаления и обновления записей. Результат поиска (выборки) данных представляется в табличном виде. Термином «запрос» называют также сами команды обращения к СУБД.
Отчет – это документ, предназначенный для вывода на печать, сформированный на основании информации, содержащейся в таблицах и запросах.
Макросы и модули являются объектами повышенной сложности и при начальном знакомстве с MS Access могут не использоваться.
Еще одним особым видом данных является схема – описание структуры связей в многотабличной базе данных.
Режимы работы СУБД Access многообразны. Так же, как и для других приложений Windows, иерархия режимов реализована через главное меню. Есть режимы общего характера: работа с файлами (меню Файл); работа с буфером обмена (меню Правка); режим настройки среды (меню Вид); справочный режим (меню Справка). Однако основным режимом можно назвать режим работы с базой данных. Он устанавливается после выполнения команды [Файл –Создать базу данных] или [Файл – Открыть базу данных]. Поскольку база данных храниться в файле, то в первом случае система потребует задать имя и место хранения файла, а во втором случае – указать на существующий файл с базой данных.
После раскрытия на экране окна базы данных (рис.3) становятся доступными подрежимы работы с основными объектами Access: таблицами, запросами, формами и отчетами, которые инициируются открытием соответствующих закладок в окне. В каждом из этих режимов открывается выбор из трех командных кнопок: открыть, конструктор, создать. Если соответствующий объект еще не создавался, то активной является только команда создать. Если объект в окне выделен какой-то из существующих объектов, то активными будут также команды открыть и конструктор. Команда открыть позволяет просмотреть объект, а команда конструктор – просмотреть или изменить структуру объекта.
Команды отдаются через главное меню, через кнопки на панели инструментов или в окнах, через контекстное меню (по правой кнопке мыши). Набор активных команд, как правило, носит контекстный характер, т.е. зависит от текущего режима работы. Наиболее важные команды вынесены на панель инструментов.
ЗАДАНИЕ 1
Запустить на исполнение MS Access.
Открыть базу данных «ВИДЕОТЕКА» (путь и файл, в котором хранится БД, будет указан учителем).
Установить режим работы с таблицей (закладка «Таблицы»). Открыть таблицу «Кассеты»: команда Открыть. Изучить содержимое таблицы.
Закрыть таблицу. Перейти в режим работы с конструктором таблицы: команда Конструктор.
Последовательно перемещаясь от поля к полю, познакомиться со свойствами полей: типами, форматами, описаниями.
Закрыть конструктор.
ЗАДАНИЕ 2
П ерейти в режим работы с формами (закладка «Формы»).
Открыть форму «Кассеты».
Через открывшуюся форму просмотреть последовательность записей. Выполнить переход на первую и последнюю запись, на запись с указанным номером.
Добавить в конец таблицы еще одну запись о новой кассете: 21, «Сибирский цирюльник», Россия, 180, мелодрама, 25.12.99, выдана
Закрыть форму.
ЗАДАНИЕ 3
В этом задании выполняются действия на сортировку записей в полной таблице.
Отсортировать таблицу в алфавитном порядке названий фильмов (ключ сортировки – поле «Фильм»). Для этого:
выделить столбец «Фильм» (щелкнуть по заголовку)
через контекстное меню или кнопку на панели инструментов выполнить сортировку.
Отсортировать таблицу по двум ключам: «Страна» и «Время» в порядке убывания. Для этого:
выделить два столбца: «Страна» и «Время» (щелкнуть по заголовкам при нажатой клавише <Shift>)
через контекстное меню или кнопку на панели инструментов выполнить сортировку.
Обратите внимание на результат: записи с одинаковым значением поля «Страна» расположились в порядке убывания поля «Время». Здесь «Страна» называется первичным, а «Время» - вторичным ключом сортировки.
ЗАДАНИЕ 4
В этом задании выполняются действия, связанные с отбором записей из таблицы с помощью фильтра.
Открыть таблицу «Кассеты».
С помощью фильтра отобрать все кассеты, выданные клиентам. Для этого:
отдать команду Записи Фильтр Изменить фильтр или через кнопку
в появившемся шаблоне в поле «Выдана» щелчком выставить флажок (галочку)
отдать команду Фильтр Применить фильтр или через кнопку
Аналогично предыдущему отобрать все не выданные кассеты.
Отобрать все фильмы, созданные в США.
ПРИЛОЖЕНИЕ
База данных «ВИДЕОТЕКА»
Структура таблицы
Имя поля |
Тип |
Размер |
Описание |
Номер |
Целый |
|
Номер видеокассеты |
Фильм |
Текстовый |
40 |
Название фильма |
Страна |
Текстовый |
15 |
Страна, где был снят фильм |
Время |
Время |
|
Продолжительность фильма в мин. |
Жанр |
Текстовый |
15 |
Жанр фильма |
Дата |
Дата |
|
Дата приобретения кассеты |
Выдана |
Логический |
|
Да- если кассета выдана, нет – если кассета на месте |
Таблица базы данных
Номер |
Фильм |
Страна |
Время |
Жанр |
Дата |
Выдана |
1 |
Пятый элемент |
США |
125 |
фантастика |
14.11.97 |
Да |
2 |
Титаник |
США |
185 |
мелодрама |
17.03.98 |
Нет |
3 |
Кавказская пленница |
Россия |
100 |
комедия |
24.05.96 |
Да |
4 |
Драйв |
США |
115 |
боевик |
22.03.97 |
Нет |
5 |
По прозвищу Зверь… |
Россия |
85 |
боевик |
03.03.97 |
Да |
6 |
Профессионал |
Франция |
125 |
боевик |
09.09.96 |
Нет |
7 |
Игрушка |
Франция |
85 |
комедия |
25.12.96 |
Нет |
8 |
Танцор диско |
Индия |
130 |
мелодрама |
12.05.95 |
Да |
9 |
Патруль времени |
США |
102 |
фантастика |
30.04.97 |
Нет |
10 |
Только сильнейшие |
США |
96 |
боевик |
15.05.97 |
Нет |
11 |
Ромео и Джульетта |
США |
126 |
мелодрама |
20.06.98 |
Да |
12 |
Зита и Гита |
Индия |
185 |
мелодрама |
11.01.96 |
Нет |
13 |
На Дерибасовской хорошая погода.. |
Россия |
95 |
комедия |
26.06.97 |
Нет |
14 |
Джуниор |
США |
90 |
комедия |
16.07.97 |
Да |
15 |
Парк Юрского периода |
США |
120 |
фантастика |
29.10.96 |
Нет |
16 |
Крепкий орешек |
США |
120 |
боевик |
31.01.97 |
Нет |
17 |
Затерянный мир |
США |
110 |
фантастика |
04.04.98 |
Да |
18 |
Американский бой |
Россия |
110 |
боевик |
15.03.97 |
Нет |
19 |
Невезучие |
Франция |
90 |
комедия |
13.02.98 |
Нет |
20 |
Танго и Кэш |
США |
98 |
боевик |
28.08.96 |
Да |
Работа 2.2. Создание базы данных «Классный журнал»
Цель работы:
освоение приемов работы с MS Access в процессе создания спроектированной базы данных;
Используемое программное средство: MS Access.
1. Открыть файл для новой базы данных:
Файл Создать БД Новая БД
в файловом окне указать путь и имя файла : «Классный журнал»
На экране откроется окно:
2. Создать таблицу УЧЕНИКИ:
в режиме Таблицы выбирается команда Создание таблицы в режиме конструктора
в открывшемся окне конструктора таблиц для всех полей таблицы УЧЕНИКИ указать имена, типы и форматы полей:
УЧЕНИКИ
Имя поля |
Тип поля |
Длина (Формат) |
НОМЕР УЧ |
числовой |
целый |
ФАМИЛИЯ |
текстовый |
30 |
ИМЯ |
текстовый |
15 |
ПОЛ |
текстовый |
1 |
АДРЕС |
текстовый |
40 |
ТЕЛЕФОН |
текстовый |
15 |
Назначить главный ключ таблицы:
установить указатель мыши на поле НОМЕР_УЧ,
выполнить команду Правка – Ключевое поле или нажать на кнопку, изображающую ключ на панели инструментов
Сохранить таблицу с именем УЧЕНИКИ. Окно конструктора таблиц показано на рисунке
5. Создать, назначить главный ключ и сохранить таблицу ПРЕДМЕТЫ следующей структуры:
ПРЕДМЕТЫ
Имя поля |
Тип поля |
Длина (Формат) |
НАЗВ_ПРЕДМЕТА |
текстовый |
30 |
УЧИТЕЛЬ |
текстовый |
40 |
6. Создать, назначить главный ключ и сохранить таблицу ОЦЕНКИ:
ОЦЕНКИ
Имя поля |
Тип поля |
Длина (Формат) |
НОМЕР_УЧ |
числовой |
целый |
НАЗВ_ПРЕДМЕТА |
текстовый |
30 |
ДАТА |
дата |
|
ОЦЕНКА |
числовой |
целый |
При назначении составного ключа одновременно выделяются поля НОМЕР_УЧ, НАЗВ_ПРЕДМЕТА и ДАТА. Выделение производится с помощью мыши при нажатой клавише Shift. Затем выполняется команда Правка – Ключевое поле.
7. Связать таблицы УЧЕНИКИ и ОЦЕНКИ. Для этого:
выполнить команду Сервис - Схема данных ;
Откроется окно «Добавление таблицы»;
выделить название таблицы «Ученики» и выполнить команду Добавить
выделить название таблицы «Оценки» и выполнить команду Добавить
выполнить команду Закрыть.
В окне «Схема данных» появятся образы двух таблиц
с помощью мыши, перетащить ключевое поле НОМЕР_УЧ из образа таблицы «Ученики» на это же поле в образе таблицы «Оценки»
Откроется окно «Связи». Последовательно активизировать флажки «Обеспечить целостность данных», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей». Тип связи «один-ко-многим» будет выбран автоматически.
8. Связать таблицы ПРЕДМЕТЫ и ОЦЕНКИ, действуя аналогично предыдущему этапу.
9. Выполнить команду Создать. Схема готова! В окне «Схема данных» будет иметь следующий вид:
10. Ввести данные в таблицу УЧЕНИКИ. Для этого:
в режиме «Таблицы» выделить название таблицы УЧЕНИКИ;
отдать команду Открыть;
На экране появится бланк таблицы, содержащей заголовки полей и пустую строку
ввести данные:
11. Аналогично ввести данные в таблицу ПРЕДМЕТЫ:
12. Ввести данные в таблицу ОЦЕНКИ
13. Создать форму для просмотра и ввода в таблице УЧЕНИКИ. Для этого:
перейти на вкладку «Формы» Создать
выбрать способ создания формы: «Мастер форм»
выбрать таблицу УЧЕНИКИ
переместить все поля таблицы из окна «Доступные поля» в окно «Выбранные поля» Далее
включить радиокнопку «В один столбец» Далее
выбрать стиль формы «Стандартный» Далее
задать имя формы: оставить имя УЧЕНИКИ; включить радиокнопку «Открытие формы для просмотра и ввода данных» Готово.
14. Сохранить базу данных по команде Файл – Сохранить.
Работа 2.3. Реализация запросов с помощью конструктора
Цель работы: освоение приемов реализации запросов на выборку с помощью конструктора запросов MS Access.
Используемые программные средства: MS Access.
Основные понятия
Конструктор запросов - высокоуровневое средство формирования запросов в СУБД MS Access, который можно рассматривать как пользовательскую оболочку к языку запросов SQL. Для формирования запроса в конструкторе используется табличная форма.
Окно конструктора запросов представлено на следующем рисунке:
Поле схемы запроса – верхняя часть окна конструктора запросов, куда помещаются схемы таблиц, данные из которых используются в запросе
Бланк запроса – таблица в нижней части окна. Столбцы относятся к полям, участвующим в формировании запроса. В первой строке указываются имена всех этих полей. Вторая строка – имя таблицы, из которой извлекается соответствующее поле. Третья строка – признак сортировки. Используется лишь для ключей сортировки. Флажки в четвертой строке отмечают признак вывода данного поля на экран при выполнении запроса. В следующих строках формируется условие отбора.
ЗАДАНИЕ 1
Получить список учеников класса, содержащий номер в журнале, фамилию и имя каждого ученика.
Команда выборки на учебном языке запросов:
.выбрать УЧЕНИКИ.НОМЕР_УЧ, УЧЕНИКИ.ФАМИЛИЯ, УЧЕНИКИ.ИМЯ сортировать УЧЕНИКИ.НОМЕР_УЧ по возрастанию
1. Перейти к работе с конструктором запросов:
выбрать в списке объектов «Запросы»
выбрать режим «Создание запроса в режиме конструктора»
отдать команду Создать
2. В поле схемы запроса поместить таблицу «Ученики»:
в окне «Добавление таблицы», вкладке «Таблицы» выбрать название таблицы «Ученики»
выполнить команду Добавить - Закрыть
3. Заполнить бланк запроса
внести в бланк данные, показанные на предыдущем рисунке.
4. Исполнить запрос:
выполнить команду Запрос - Запуск. На экране появится таблица следующего вида:
Сохранить запрос с именем «Список учеников»
ЗАДАНИЕ 2
Вывести список всех оценок, полученных Волеговым Кириллом по всем предметам. Указать даты получения оценок.
Команда на учебном языке запросов:
.выбрать ОЦЕНКИ.НАЗВ_ПРЕДМЕТА, ОЦЕНКИ.ДАТА, ОЦЕНКИ.ОЦЕНКА где ОЦЕНКИ.НОМЕР_УЧ=5 сортировать ОЦЕНКИ.НАЗВ_ПРЕДМЕТА по возрастанию, ОЦЕНКИ.ДАТА по возрастанию
1. Построить запрос в конструкторе запросов в виде, показанном на рисунке:
2. Исполнить запрос. Результат будет следующим:
3. Сохранить запрос с именем «Оценки Волегова»
ЗАДАНИЕ 3
Получить список всех оценок, полученных по алгебре всеми учениками класса. Отсортировать по фамилиям учеников и по датам получения оценок.
Команда на учебном языке запросов:
.выбрать УЧЕНИКИ.ФАМИЛИЯ, ОЦЕНКИ.ДАТА, ОЦЕНКИ.ОЦЕНКА где ОЦЕНКИ.НАЗВ_ПРЕДМЕТА=”Алгебра” сортировать УЧЕНИКИ.ФАМИЛИЯ по возрастанию, ОЦЕНКИ.ДАТА по возрастанию
Построить запрос в конструкторе запросов в виде, показанном на рисунке:
Исполнить запрос. Результатом будет следующая таблица:
3. Сохранить запрос с именем «Оценки по алгебре»
ЗАДАНИЕ 4
Вывести список всех двоек, полученных учениками класса, с указанием фамилии ученика, даты получения двойки, предмета и учителя. Отсортировать по фамилиям учеников
Команда на учебном языке запросов:
.выбрать УЧЕНИКИ.ФАМИЛИЯ, ОЦЕНКИ.ДАТА, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА, ПРЕДМЕТЫ_УЧИТЕЛЬ где ОЦЕНКИ.ОЦЕНКА=2 сортировать УЧЕНИКИ.ФАМИЛИЯ по возрастанию
Для реализации этого запроса используются все три связанные таблицы.
Построить запрос в конструкторе запросов в виде, показанном на рисунке:
Исполнить запрос. Результатом будет следующая таблица:
3. Сохранить запрос с именем «Двоечники»
ЗАДАНИЕ 5
Вывести список всех учеников класса получивших пятерки по алгебре и по истории, указав фамилию, имя, предмет и дату получения оценки
Команда на учебном языке запросов:
.выбрать УЧЕНИКИ.ФАМИЛИЯ, УЧЕНИКИ.ИМЯ, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА, ОЦЕНКИ.ДАТА где (ОЦЕНКИ.НАЗВ_ПРЕДМЕТА=”Алгебра” или ОЦЕНКИ.НАЗВ_ПРЕДМЕТА=”История”) и ОЦЕНКИ.ОЦЕНКА=5 сортировать УЧЕНИКИ.ФАМИЛИЯ по возрастанию
1. Построить запрос в конструкторе запросов в виде, показанном на рисунке:
Обратите внимание на то, как реализовано сложное логическое выражение в условии отбора. Условия отбора, записанные в одной строке, объединяются операцией «и». Условия во второй строке объединяются с условием первой строки операцией «или». Такая реализация условия отбора в этом запросе равносильна раскрытию скобок в логическом выражении в команде на учебном языке:
(НАЗВ_ПРЕДМЕТА=”Алгебра” или НАЗВ_ПРЕДМЕТА=”История”) и ОЦЕНКА = 5 тождественно выражению:
НАЗВ_ПРЕДМЕТА=”Алгебра” и ОЦЕНКА = 5 или НАЗВ_ПРЕДМЕТА=”История” и ОЦЕНКА = 5
2. Исполнить запрос. Результатом будет следующая таблица:
3. Сохранить запрос с именем «Пятерки по алгебре и истории»
ЗАДАНИЕ 6
Вычислить средние оценки для всех учеников по всем предметам. Вывести фамилию ученика, название предмета, среднюю оценку, ФИО учителя по этому предмету.
Команда на учебном языке запросов:
.выбрать УЧЕНИКИ.ФАМ, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА, Avg(ОЦЕНКИ.ОЦЕНКА), ПРЕДМЕТЫ.УЧИТЕЛЬ группировать УЧЕНИКИ.ФАМ, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА, ПРЕДМЕТЫ.УЧИТЕЛЬ сортировать УЧЕНИКИ.ФАМ по возрастанию, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА по возрастанию
1. Построить запрос в конструкторе запросов в виде, показанном на рисунке:
Для того чтобы в конструкторе запросов появилась строка «Групповая операция», нужно через главное меню окна Access отдать команду Вид - Групповые операции. Во всех полях новой строки установится слово «Группировка». Функция вычисления среднего Avg выбирается из списка, который открывается после щелчка по кнопке в этой строке в ячейке для поля ОЦЕНКА.
2. Исполнить запрос. Результатом будет следующая таблица:
3. Сохранить запрос с именем «Средние оценки»
ЗАДАНИЕ 7
Получить список учеников, имеющих среднюю оценку по алгебре выше четырех. Вывести фамилию ученика и среднюю оценку по алгебре. Отсортировать список по фамилиям
Команда на учебном языке запросов:
.выбрать УЧЕНИКИ.ФАМ, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА, Avg(ОЦЕНКИ.ОЦЕНКА) группировать УЧЕНИКИ.ФАМ, ОЦЕНКИ.НАЗВ_ПРЕДМЕТА где ОЦЕНКИ.НАЗВ_ПРЕДМЕТА = “Алгебра” и Avg(ОЦЕНКИ.ОЦЕНКА) >4 сортировать УЧЕНИКИ.ФАМ по возрастанию
1. Построить запрос в конструкторе запросов в виде, показанном на рисунке:
2. Исполнить запрос. Результатом будет следующая таблица:
3. Сохранить запрос с именем «Средние оценки больше 4»