Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИТ А.С. Терехова.doc
Скачиваний:
64
Добавлен:
08.03.2015
Размер:
2.57 Mб
Скачать

6. Контрольный пример

Рассмотрим в качестве примера 16 задачу.

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

  • ФИО;

  • Табельный номер;

  • Код подразделения;

  • Год рождения;

  • Образование;

  • Должность;

  • Разряд;

  • Адрес;

  • Кол-во детей;

  • Оклад;

  • Ученое звание;

  • Надбавка_2.

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

  • Сотрудники;

  • Подразделения;

  • Звания.

Таблица «Сотрудники» включает в себя следующие поля:

Таблица «Подразделения» включает в себя следующие поля:

Таблица «Звания» включает в себя следующие поля:

  1. Между таблицами можно установить следующие типы связей.

4. Занести данные в созданные таблицы (см. табл. 4-6).

Таблица 4

Подразделения

Код подразде-ления

Наименование подразделения

01

Ректорат

02

Отдел кадров

03

Институт дополнительного профессионального образования

04

Институт дистанционного образования

05

Международный институт финансов, управления и бизнеса

06

Институт государства и права

07

Факультет математики и компьютерных наук

08

Факультет истории и политических наук

09

Кафедра философии

10

Кафедра экономической теории

11

Кафедра истории

12

Кафедра математического анализа и теории функций

13

Кафедра программного обеспечения

14

Кафедра иностранных языков

15

Кафедра информационных систем

16

Кафедра математического моделирования

17

Кафедра бухгалтерского учета

Таблица 5

Звания

Звания

Надбавка_2

Доцент

0,4

Профессор

0,6

Член-корреспондент

0,8

Академик

0,1

Нет

0

Сотрудники Таблица 6

ФИО

Табельный номер

Код подразде-ления

Год рождения

Образование

Должность

Разряд

Адрес

Кол-во детей

Оклад

Звание

Иванов И. И.

000101

10

12.02.50

высшее

доцент

15

 

1

1800

доцент

Петров П. П.

000102

15

14.03.55

высшее

доцент

15

 

 

1800

доцент

Сидоров В. В.

000103

10

25.01.60

высшее

ст. преп.

13

 

 

1650

нет

Романова Т. П.

000104

15

01.01.66

высшее

ст. преп.

13

 

2

1650

нет

Рабинович Л. Р.

000105

15

10.10.65

высшее

ст. преп.

13

 

2

1650

нет

Воробьев А. П.

000106

15

18.12.75

среднее

оператор

7

 

 

800

нет

Абрамович П. П.

000107

10

13.03.62

высшее

ассистент

11

 

 

1200

нет

Голубева И. А.

000108

15

18.10.49

высшее

доцент

15

 

2

1800

доцент

Андреева А. П.

000109

15

15.12.52

высшее

ст. преп.

13

 

 

1650

нет

Титов Т. В.

000110

10

16.02.43

высшее

профессор

17

 

3

2100

профессор

Прототип А. Р.

000111

15

25.04.58

высшее

ассистент

11

 

 

1200

нет

Журбин Р. А.

000112

15

12.05.54

высшее

профессор

17

 

 

2100

нет

Береза Р. А.

000113

15

05.06.60

высшее

доцент

15

 

1

1800

доцент

Ветров Е. Н.

000114

10

07.11.67

высшее

ассистент

11

 

1

1200

нет

Гусева О. Н.

000115

15

12.09.70

среднее

лаборант

7

 

 

800

нет

Осина К. А.

000116

15

22.07.78

среднее

лаборант

7

 

 

800

нет

Дубов М. А.

000117

10

13.09.49

высшее

доцент

15

 

 

1800

доцент

  1. Сформировать 3-4 типа запросов, например:

  • получить список сотрудников, имеющих ученое звание «доцент»;

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

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

Запрос 1

С помощью Конструктора запросов сформируем запрос на выборку (рис. 1), извлекающий из таблиц созданной базы данных фамилии сотрудников, имеющих звание «доцент» и наименование подразделения, в котором они работают. Для этого используем поле «ФИО» и «Ученое звание» из таблицы Сотрудники и поле «Наименование подразделения» из таблицы Подразделения. В строку Условия отбора введем значение «доцент».

Рис. 1. Конструктор запроса на выборку сотрудников, имеющих ученое звание «доцент»

Запрос 2

С помощью Конструктора запросов сформируем запрос на выборку (рис. 2), извлекающий из таблиц созданной базы данных фамилии сотрудников кафедры экономической теории и подсчитаем для них заработную плату. Для выбора подразделения «Кафедра экономической теории» включим в запрос поле «Код подразделения» и для него в поле «Условие отбора» - код 10, соответствующий данной кафедре, и удалим флажок Вывод на экран, чтобы данное поле не выводилось в результирующей таблице. Для расчета величины заработной платы с учетом установленного оклада и надбавки за ученое звание необходимо ввести в запрос вычисляемое поле. С помощью Построителя выражений в вычисляемое поле запишем:

Выражение 1: = [сотрудники]![Оклад]*(1+[Звания]![Надбавка_2]).

Заменив «Выражение 1» на «Зарплата», получим

Зарплата: = [сотрудники]! [Оклад]*(1+[Звания]![Надбавка_2]).

В свойствах вычисляемого поля установим Формат поля – фиксированный и Число десятичных знаков – 2.

Рис. 2. Конструктор запроса на выборку сотрудников кафедры экономической теории с подсчетом зарплаты

Запрос 3

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

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

Для этого используем поля «ФИО» и «Год рождения» из таблицы Сотрудники и поле «Наименование подразделения» из таблицы Подразделения. В строку «Условия отбора» введем значение «*10*». Знак * заменяет значения числа в месяце и года рождения. Для выбора подразделения «Кафедра информационных систем» включим в запрос поле «Код подразделения» и для него в поле «Условие отбора» - код 15, соответствующий данной кафедре, и удалим флажок Вывод на экран ,чтобы данное поле не выводилось в результирующей таблице.