Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Студентам ИТ / 2 УПП_ИТ / Основн_литература / ИТ (Access) / УП_лаб_практ_Access (Гаврилюк)

.pdf
Скачиваний:
22
Добавлен:
14.02.2016
Размер:
949.49 Кб
Скачать

В таблице Контрольные вопросы должно быть два поля: 1-ое - № вопроса (тип данных - Числовой, размер – целое, ключевое, индексированное), а 2-ое - Вопрос (тип данных – Текстовый, размер – 255).

Затем внесите в эту таблицу записи, содержание которых изложено в таблице № 1.

Структура таблицы Ответы должна содержать 4 поля, а именно:

Шифр студента (тип - текстовый, размер поля-10, обязательное поле – Да,

индексированное поле – Да (Допускаются совпадения)).

№ вопроса (тип- числовой, размер поля - Целое, обязательное поле – Да,

индексированное поле – Да (Допускаются совпадения)).

Ответ студента (тип – текстовый, размер поля 255).

Отметка преподавателя (тип – Логический, формат поля – Истина/Ложь).

Эта таблица должна иметь составной ключ, включающий поля Шифр студента и № вопроса. Для создания ключа выделите эти (индексированные) поля и выполните команду Правка, Ключевое поле.

Внесите в таблицу Ответы несколько записей, содержание которых должно соответствовать шифрам в таблице Студенты и № вопроса в таблице

Вопросы.

 

Таблица № 3.1

 

 

Содержание вопросов

вопроса

 

1

Какие типы связей могут быть установлены между двумя

 

таблицами Accsess?

2

Как обеспечить целостность данных?

3

Какой тип связей установлен между полем Шифр таблицы Студент

 

и полем Шифр студента таблицы Ответы?

4

Чем определяется набор свойств полей Access?

5

Назначение схемы данных в Access

6

Как изменить связи между двумя таблицами?

7

Какие из таблиц созданной вами базы данных являются главными?

8

Назовите типы запросов на изменение (запросов действия)?

9

Назначение групповых операций

10

Порядок создания вычисляемого поля

11

Назначение построителя выражений

12

Назовите 9 встроенных функций Access, используемых при

 

групповых операциях

13

Порядок создания вычисляемых полей

14

Как задать условия отбора в запросе с групповыми операциями?

15

Назначение операторов Between, In, Like, And, Or. Приведите

 

примеры их применения

16

Как выполнить запрос на выборку данных по интервалу значений?

17

с параметрами?

18

Сформулируйте на языке SQL запрос Результат зачета

19

Как построить запрос на выборку данных по интервалу значений

41

Шаг 3. Создайте схему данных, как показано на рис. 1.

Рис. 3.1. Схема данных

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

Шаг 4. Сконструируйте запрос Результат зачета на создание таблицы

Список студентов, сдавших зачет.

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

Сэтой целью выполните следующие действия.

В окне базы данных выделите вкладку Запросы.

В этом же окне нажмите кнопку Создать.

В открывшемся окне Новый запрос выбрать Конструктор

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

Нажмите кнопку Закрыть. В результате появится окно Запрос1: запрос на выборку, в верхнем окне которого отображена схема данных запроса, а в нижнем расположен бланк запроса по образцу (см. рис.2).

Включите в запрос поля Шифр, Фамилия и Имя из таблицы

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

Нажмите кнопку Групповые операции и в столбце поля Шифр студента в строке Группировка введите функцию Count. С этой целью щелкните в строке Группировка, откройте список функций и выберите

Count.

Введите условие отбора. В строке Условие отбора под полем Отметка преподавателя введите Истина, а для поля Шифр студента

42

введите оператор >=8, значение которого обеспечит отбор только тех студентов, которые дали правильный ответ на 8 или более вопросов.

Щелкните в строке Сортировка: под полем Фамилия и выберите по возрастанию, что позволит упорядочить выводимые в запросе данные по полю Фамилия в алфавитном порядке.

Выполните команду Запрос, Создание таблицы.

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

Выполните команду Файл, Закрыть и затем в окне диалога

Сохранение введите имя запроса Результат зачета.

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

На рис. 3.2 показан фрагмент окна созданного вами запроса.

Технология построения многотабличной формы.

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

43

рис.3), в котором для таблицы Студенты выберите следующие поля: Шифр,

Фамилия и Имя.

Рис.3.3. Первое диалоговое окно Создание форм

Враскрывающемся списке Таблицы/запросы выберите таблицу Контрольные вопросы, из которой выберите все поля. Аналогично выделите таблицу Ответы и выберите поля Ответ студента и Отметка преподавателя6.

Завершите диалог, нажав кнопку Далее.

Вследующем окне Создание форм выберите тип представления данных по Студенты, а переключатель – Подчиненные формы и нажмите кнопку

Далее.

Во вновь появившемся окне Создание форм установите переключатель -

ленточный и нажмите кнопку Далее.

Вследующем диалоге выберите требуемый стиль Обычный и нажмите кнопку Далее.

Впоследнем диалоговом окне Создание форм задайте имена Форма:

Результаты ответов студентов, а Подчиненная форма: Ответы подчиненная форма1 и нажмите кнопку Готово.

На рис. 3.4 показана созданная мастером многотабличная форма на основе

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

44

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

Рис. 3.4 Многотабличная форма Результаты ответов студентов

Используя эту форму,7 студент должен дать ответы на контрольные вопросы. Затем после контрольной установки преподавателем флажков в поле

Отметка преподавателя, необходимо открыть запрос Результаты зачета и

определить результат зачета, открыв затем таблицу Список студентов,

сдавших зачет.

В случае незачета следует продолжить изучение СУБД MS Access 97 (Access 2000) и откорректировать ответы на контрольные вопросы, используя форму Результаты ответов студентов.

Сохраните базу данных в созданной папке.

Запрос на добавление: Ввод записей в таблицу Ответы

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

Сэтой целью выполните следующие действия.

В окне базы данных выделите вкладку Запросы.

В этом же окне нажмите кнопку Создать.

В открывшемся окне Новый запрос выбрать Конструктор

В окне Добавление таблицы выбрать таблицы Студенты и Контрольные вопросы и нажать кнопку Добавить.

7 Для отображения в этой форме № вопроса и его содержания необходимо в таблице Ответы внести записи в поля Шифр студента и № вопроса. Каждый студент должен выполнить не менее 8 записей. Для автоматизации ввода записей можно воспользоваться запросом Добавление записей в таблицу Ответы (см. приложение – базу данных Учебный процесс)

45

Нажмите кнопку Закрыть. В результате появится окно Запрос1: запрос на выборку, в верхнем окне которого отображены таблицы запроса, а в нижнем расположен бланк запроса по образцу (см. рис.4).

Включите в запрос поле Шифр из таблицы Студенты, а также поле

вопроса из таблицы Контрольные вопросы.

Выполните команду Запрос, Добавление.

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

Добавление.

Укажите в строке Добавление поля Шифр студента и № вопроса

таблицы Ответы, как показано на рис. 3.4.

Введите условие отбора. В строке Условие отбора под полем Шифр, как показано на рис. 3.5, наберите параметр [Введите шифр студента].

Выполните команду Файл, Закрыть и затем в окне диалога Сохранение введите имя запроса.

Чтобы просмотреть результат выполненной вами работы, откройте запрос на добавление Ввод записей в таблицу Ответы. При этом в окне диалога Введите значение параметра введите учебный шифр студента. В результате действия запроса в таблицу Ответы будет добавлено от 0 до 17 записей.

Рис. 3.5. Запрос на добавление. Ввод записей в таблицу Ответы.

46

Задание № 2. Технология создания многотабличных баз данных на тему «Вычисления в Access 2000»

Постановка задачи. Требуется создать тренировочную учебную базу данных Учет сеансов связи, включающую в себя четыре таблицы:

Регистрация сеансов, Справочник абонентов, Справочник кодов и

тарифов, Архив, 9 запросов, 2 формы и 2 отчета.

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

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

Конструирование запросов с вычисляемыми полями и использованием функции IIf(condition;true;false) - немедленное ЕСЛИ

Создание вычисляемых полей.

Конструирование запросов с параметрами.

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

Конструирование запросов действия: на добавление, обновление и удаление записей.

Конструирование запросов для создания отчетов.

Технология разработки многотабличных форм и отчетов.

Шаг 1. Создайте файл новой базы данных, выполнив следующие действия. Запустите на выполнение программу Access 2000.

Затем в окне Microsoft Access установите переключатель в положение Новая база данных. Нажмите ОК.

В окне Файл новой базы данных введите имя файла Учет сеансов связи.mdb. Затем активизируйте диск D: и создайте на нем папку Базы данных и нажмите ОК.

Затем в этой папке аналогичным образом создайте папку 22.02, а в ней папку ФИО студента, указав свои реквизиты. Сохраните файл базы данных в своей папке. Нажмите кнопку Создать, чтобы завершить диалог.

Шаг 2. Создайте в режиме конструктора структуры трех таблиц:

Регистрация сеансов, Справочник абонентов, Справочник кодов и

тарифов

Структура таблицы Справочник абонентов должна содержать 4 поля, а именно:

№ телефона (тип данных - текстовый, размер поля-10, маска ввода 000-00- 00, обязательное поле – Да, индексированное поле – Да (Совпадения не допускаются)).

ФИО (тип данных - текстовый, размер поля - 50, обязательное поле – Да, индексированное поле – Нет.

47

Адрес (тип – текстовый, размер поля –255).

Льготный (тип – Логический, формат поля – Да/Нет, описание Льготный – Да, обычный – Нет).

Внесите в таблицу Справочник абонентов несколько записей Структура таблицы Справочник кодов и тарифов состоит из двух полей:

1-ое – Код (тип данных - Числовой, размер – длинное целое, ключевое,

индексированное поле – Да (Совпадения не допускаются)).

2-ое – Стоимость_1_мин (тип данных – Числовой , размер – двойное с плавающей точкой, число десятичных знаков - авто).

Втаблице Регистрация сеансов должно быть 5 полей:

№_заказа (тип – Счетчик, размер поля – длинное целое, ключевое, индексированное - Да (Совпадения не допускаются).

№_телефона (тип – Текстовый, размер - 10, маска ввода 000-00-00).

Код (тип – числовой, размер – длинное целое);

Дата (тип – Дата/время, формат – Краткий формат даты);

Длительность (тип – числовой, размер поля – длинное целое).

Шаг 3. Создайте таблицу Архив

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

Шаг 4. Создайте схему данных, как показано на рис. 3.6.

Технология создания схемы данных подробно изложена во второй главе.

Рис. 3.6. Схема данных

Шаг 5. Создайте форму для ввода данных в таблицу Регистрация сеансов. Откройте таблицу Регистрация сеансов. На панели инструментов

48

нажмите кнопку Новый объект: автоформа. 2.Сохраните форму под именем

Регистрация сеансов и закройте форму.

Шаг 6. Введите данные в таблицу Регистрация сеансов.

Откройте форму Регистрация сеансов в окне База данных Введите с помощью формы разнообразные данные в таблицу (поле

№_заказа недоступно для ввода). Вводимые значения должны удовлетворять требованиям сохранения целостности данных БД. Заполните 10-15 заказов для пяти клиентов. Закройте форму и таблицу.

Шаг 7. Создайте запрос на выборку звонков с одного номера телефона.

В окне База данных нажмите Запросы и затем кнопку Создать на панели инструментов в окне Новый запрос выберите Конструктор. Добавьте в запрос таблицу Peгистрация сеансов: выделите имя таблицы и нажмите кнопки Добавить, Закрыть. В окне запроса в режиме конструктора перенесите поля таблицы в строку Поле бланка запроса поочередно или выберите поля в раскрывающихся списках. В поле №_телефона в строке Условие введите выражение для отбора - (цифры номера) и нажмите [Enter].

Запустите запрос нажатием кнопки Запуск на панели инструментов или

Режим таблицы из меню Вид. Сохраните запрос как Сеансы абонента.

Шаг 8. Модернизируя созданный запрос, создайте другие запросы для выбора сеансов связи абонента за период с 03 по 31 января 2003 г. (условие отбора – Between #03.01.03# And #31.01.03#), сеансов связи в один из городов за тот же период, но с длительностью разговора больше 5 минут, а также всех звонков в тот же город за последний месяц. Сохраните созданные запросы под именами Звонки за период, Звонки в город и Звонки за последний месяц

соответственно.

Шаг 9. Создайте запрос с параметрами для просмотра сеансов связи с любого номера. С этой целью доработайте запрос Сеансы абонента. В поле №_телефона в строке Условие отбора введите выражение для ввода параметра [Введите № телефона].

Нажмите кнопку Запуск на панели инструментов Конструктор запросов и в появившемся окне Введите значение параметра введите требуемый номер телефона и нажмите ОК или [Enter]. Сохраните запрос под именем Сеансы абонентов.

Шаг 10. Определите стоимость каждого разговора за февраль 2003 г.

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

Справочник кодов и тарифов.

Добавьте в бланк запроса поля: Номер телефона, Код, Длительность разговора, Дата и Стоимость_1_мин.

В строке Поле бланка запроса с помощью кнопки Построить наберите

выражение

Стоимость:

[Регистрация

49

сеансов]![Длительность]*[Справочник кодов и тарифов]![Стоимость_1_мин]. Выделите поле Стоимость: и активизируйте команду Свойства. В свойствах поля (рис. 3.7) определите формат - денежный. В строке бланка запроса по образцу Условие отбора в поле Дата

введите Between #01.02.03# And #28.02.03#. Выполните запрос и затем сохраните его с именем Условная стоимость услуг связи.

Рис. 3.7. Диалоговое окно Свойства поля

Шаг 11. С целью определения стоимости сеансов связи, учитывающей различные тарифы для разных групп абонентов (льготный тариф - 50% от номинального), выполните модернизацию запроса Условная стоимость услуг связи. С этой целью Дополнительно добавьте в бланк запроса таблицу Справочник абонентов и в строке Поле бланка запроса, нажав кнопку

Построить и используя открывшееся окно Построитель выражений

(рис. 3.8) наберите формулу

Стоимость: IIf([Льготный]=Да;[Регистрация сеансов]![Длительность]*[Справочник кодов и тарифов]![Стоимость_1_мин]*0,5;[Регистрация сеансов]![Длительность]*[Справочник кодов и тарифов]![Стоимость_1_мин]).

Рис. 3.8. Окно диалога для создания вычисляемого поля

50

Соседние файлы в папке ИТ (Access)