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

Методичка БД V.3.0 light (docx)

.pdf
Скачиваний:
10
Добавлен:
14.03.2015
Размер:
608.41 Кб
Скачать

4.ПРИМЕР ВЫПОЛНЕНИЯ КОНТРОЛЬНОГО ЗАДАНИЯ (ЛАБОРАТОРНОЙ РАБОТЫ)

ПО ПРОЕКТИРОВАНИЮ И СОЗДАНИЮ БАЗЫ ДАННЫХ

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

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

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

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

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

Заполним матрицу отношений типов объектов (таблица 4.1). Представленный в таблице 4.1 вариант матрицы отношений яв-

ляется окончательным, т.е. в ней представлены только прямые зависимости типа “один ко многим”. Знаки “+”, соответствующие косвенным зависимостям, которые могли присутствовать в промежуточном варианте матрицы отношений, были удалены.

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

Построим согласно матрице отношений схему структуры предметной области и представим ее на рисунке 4.1.

19

Таблица 4.1 - Матрица отношений типов объектов предметной области “Учет производства продукции”

Тип объектов

Тип объектов

Разряд

Рабочий

Бригада Товарная группа Вид продукции

Присвоение разряда Назначение в бригаду Отчет Позиция отчета

Уровень

Разряд

Рабочий

Бригада

Товарная группа

Вид продукции

Присвоение разряда

Назначение в бригаду

Отчет

Позиция отчета

 

 

 

 

 

 

+

 

 

 

V

 

 

 

 

 

+

+

 

 

V

 

 

 

 

+

 

+

+

 

V

 

 

 

 

 

 

 

+

V

 

 

 

 

 

 

 

 

V

 

 

 

 

 

 

 

 

 

V

 

 

 

 

 

 

 

 

 

V

 

 

 

 

 

 

 

 

+

V

 

 

 

 

 

 

 

 

 

V

I

I

I

I

II

II

II

II

III

 

 

Разряд

 

Рабочий

 

Бригада

 

Товарная

 

 

 

 

группа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Присвоение

 

Назначение

 

Отчет

 

 

Вид

разряда

 

в бригаду

 

 

 

продукции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Позиция

отчета

Рисунок 2.1 - Схема структуры предметной области “Учет производства продукции”

20

Выше на схеме изображены родительские типы объектов, ниже – дочерние.

Все отношения между типами объектов, представленные на рисунке 4.1 на схеме структуры предметной области, имеют вид “один ко многим”. Одной товарной группе соответствуют многие виды продукции. Одной бригадой составляется много отчетов. Один отчет может включать много позиций. Один и тот же вид пр о- дукции может быть произведен множество раз.

Отношение между типами объектов “Рабочий” и “Бригада” имеет вид “многие ко многим”, т.к. один и тот же рабочий может в разное время работать в разных бригадах, а одна бригада состоит из многих рабочих. Отношение между типами объектов “Рабочий” и “Бригада” является существенным и должно быть отображено на схеме структуры предметной области. Чтобы сделать это, в структуре предметной области выделяется еще один тип объектов – “Назначение в бригаду” и отношение типа “многие ко многим” между типами объектов “Рабочий” и “Бригада” отображается при помощи двух отношений типа “один ко многим”, а именно: отношения между типами объектов “Рабочий” и “Назначение…”, а также отношения между типами объектов “Бригада” и “Назначение…”.

Аналогично отображается существенная связь типа “многие ко многим” между типами объектов “Разряд” и “Рабочий”. “Разряд” связывается с “Присвоением…” и “Рабочий” связывается с “Присвоением”, причем каждая из этих связей имеет вид “один ко многим”.

Определим набор таблиц базы данных. Каждому объекту предметной области будет соответствовать линейная таблица, т.е. база данных будет состоять из девяти таблиц: Разряды, Рабочие, Бригады, ТоварныеГруппы, ВидыПродукции, Отчеты, Назначения, Присвоение, ПозицииОтчетов. Обратите внимание: в именах таблиц отсутствуют пробелы между словами. СУБД (в частности MS Access) могут позволять использовать пробелы в именах, однако делать это нежелательно с точки зрения последующего использования имен в формулах и выражениях.

Составим словарь имен. Результаты этого шага проектирования базы данных представим в таблице 4.2.

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

21

Таблица 4.2 - Словарь имен базы данных “Учет производства продукции”

Слово

Сокращение

 

Слово

Сокращение

Бригада

Бриг

 

Отчет

Отч

Вид

Вид

 

По порядку

ПП

Время

Врем

 

Позиция

Поз

Группа

Гр

 

Присвоение

Пр

Дата

Дата

 

Продукция

Прод

Единица

Ед

 

Рабочий

Раб

Измерение

Изм

 

Разряд

Разр

Имя

Имя

 

Табельный

Таб

Количество

Кол

 

Фамилия

Фам

Коэффициент

Коэф

 

 

 

Назначение

Назн

 

 

 

Наименование

Наим

 

 

 

Номер

Ном

 

 

 

Норма

Норм

 

 

 

Отчество

Отч

 

 

 

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

Жирным шрифтом в каждой из таблиц выделены ключевые поля. Поля, по которым будут установлены связи между двумя таблицами, должны присутствовать в каждой из этих таблиц. В родительских таблицах эти поля являются ключевыми, в дочерних (как правило) – обычными. Это позволяет установить между соответствующими таблицами связи типа один ко многим. Чтобы можно было связать родительскую таблицу с дочерней, в дочернюю таблицу обязательно необходимо поместить ключевое поле из родитель-

ской.

При формировании системных имен с использованием сокращений из словаря между частями системного имени не ставится пробел. Возможен такой вариант формирования системных имен, при котором части системного имени разделены знаком подчеркивания. В этом случае имена полей таблицы “ВидыПродукции” выглядели бы следующим образом: Код_Вид, Ном_Гр, Наим_Вид, Ед_Изм, Норм_Врем.

22

Таблица 4.3 - Состав полей таблиц базы данных “Учет производства продукции”

Название

Подпись поля

Системное

Тип

Размер

таблицы

имя

поля

 

 

Разряды

Номер разряда

НомРазр

Т

2

 

Коэффициент

РазрКоэф

Ч

одинарн.

Рабочие

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

ТабНом

Т

5

 

Фамилия

ФамРаб

Т

25

 

Имя

ИмяРаб

Т

25

 

Отчество

ОтчРаб

Т

25

 

Адрес

АдрРаб

Т

50

Бригады

Номер бригады

НомБриг

Т

2

 

Наименование бригады

НаимБриг

Т

20

Товарные

Номер группы

НомГр

Т

2

Группы

Наименование группы

НаимГр

Т

25

Виды

Код продукции

НомВид

Т

4

Продукции

Номер тов. группы

НомГр

Т

2

 

Наименование продукции

НаимВид

Т

50

 

Ед. изм.

ЕдИзм

Т

5

 

Норма времени

НормВрем

Ч

одинарн.

Отчеты

Номер отчета

НомОтч

Т

7

 

Номер бригады

НомБриг

Т

2

 

Дата отчета

ДатаОтч

Д

 

Назначения

Номер назначения

НомНазн

Т

7

 

Номер бригады

НомБриг

Т

2

 

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

ТабНом

Т

5

 

Дата назначения

ДатаНазн

Д

 

 

Дата отмены назначения

ДатаОтм

Д

 

Присвоение

Код присвоения разряда

КодПр

Т

6

 

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

ТабНом

Т

5

 

Номер разряда

НомРазр

Т

2

 

Дата присвоения

ДатаПр

Д

 

Позиции

Номер отчета

НомОтч

Т

7

Отчетов

№ п/п

НомПП

Т

2

 

Код продукции

НомВид

Т

4

 

Количество

КолПрод

Ч

одинарн.

Создадим каждую из таблиц базы данных “Учет производства продукции” в СУБД Microsoft Access в режиме конструктора.

23

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

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

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

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

На рисунке 4.2 представлена схема данных базы “Учет производства продукции”.

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

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

Для обеспечения более удобного ввода и просмотра данных создадим ряд форм с наличием подчиненных: Рабочие / Назначения, Присвоение; Бригады / Отчеты; Отчеты / ПозицииОтчетов. На рисунке 4.3 в качестве примера представлена первая из перечисленных форм с наличием подчиненных.

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

В таблицах 4.4 – 4.12 представлены исходные данные базы “Учет производства продукции”.

24

25

Рисунок 4.2 – Схема данных базы “Учет производства продукции”

Рисунок 4.3. - Форма с наличием подчиненных Рабочие / Назначения, Присвоение для одновременного заполнения и просмотра данных таблиц “Рабочие”, “Назначения” и “Присвоение”

Таблица 4.4 -

Таблица 4.5 -

Таблица 4.6 -

Таблица

 

Таблица

Таблица

 

"Разряды”

 

“ТоварныеГруппы”

"Бригады”

 

 

 

 

 

 

 

 

 

Номер

 

Коэф-

 

Номер

Наименование

 

Номер

Наименование

разряда

фициент

 

группы

группы

 

бригады

бригады

01

 

1,00

 

01

Посуда

 

01

Бригада № 1

02

 

1,10

 

02

Вазы

 

02

Бригада № 2

03

 

1,20

 

03

Сувениры

 

03

Бригада № 3

04

 

1,30

 

 

 

 

04

Бригада № 4

05

 

1,40

 

 

 

 

 

 

06

 

1,50

 

 

 

 

 

 

07

 

1,60

 

 

 

 

 

 

08

 

1,75

 

 

 

 

 

 

09

 

1,90

 

 

 

 

 

 

10

 

2,00

 

 

 

 

 

 

26

Таблица 4.7 - Таблица “Рабочие”

 

Таб.

Фамилия

 

Имя

Отчество

 

Адрес

 

 

номер

 

 

 

00001

Васечкин

 

Анатолий

Дмитриевич

Ленина, 55-120

 

00002

Смирнов

 

Савелий

Васильевич

Карла Маркса, 12-56

00003

Александров

 

Сергей

Петрович

Сиреневый, 12-225

00004

Новиков

 

Григорий

Емельянович

Труда, 23-20

 

00005

Пореч

 

Галина

Александровна

Ленина, 60-120

 

00006

Черкизов

 

Алексей

Борисович

Куйбышева, 25-63

00007

Репина

 

Наталья

Львовна

Комсомольская, 30-65

00008

Мурзабаева

 

Гульнара

Забитовна

Байкальская, 20-78

00009

Колесова

 

Елена

Викторовна

Урюпинская, 23-54

00010

Степанов

 

Алексей

Константинович

Красногвардейцев, 1-10

Таблица 4.8 - Таблица “ВидыПродукции”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Код

Номер

 

 

 

Ед.

 

Норма

 

товарной

Наименование продукции

 

продукции

изм.

 

времени

группы

 

 

 

 

0001

 

01

 

Чайная пара "Золотая осень"

шт

 

1

0002

 

01

 

Кофейный сервиз "Аврора"

 

набор

 

12

0003

 

01

 

Чайная чашка "Космос"

 

шт

 

1

0004

 

01

 

Чайный сервиз "Амбер"

 

набор

 

30

0005

 

01

 

Чайная пара "Шотландка"

 

шт

 

1,5

0006

 

02

 

Ваза "Пингвин"

 

шт

 

3

0007

 

02

 

Ваза "Хризантема"

 

шт

 

2,5

0008

 

02

 

Ваза "Карнегия"

 

шт

 

6

0009

 

03

 

Статуэтка "Медведь"

 

шт

 

0,5

0010

 

03

 

Статуэтка "Пингвин"

 

шт

 

2

Таблица 4.9 –

Таблица "Присвоение”

Код при-

Таб.

Дата при-

своения

номер

разр.

своения

000001

00001

03

02.05.04

000002

00002

04

02.05.04

000003

00003

04

02.05.04

000004

00004

04

31.05.04

000005

00001

04

31.05.04

000006

00002

05

31.05.04

000007

00005

02

01.06.04

Код при-

Таб.

Дата при-

своения

номер

разр.

своения

000008

00006

03

01.06.04

000009

00007

05

01.07.04

000011

00008

03

01.07.04

000012

00005

03

01.07.04

000013

00009

04

05.07.04

000014

00010

03

05.07.04

 

 

 

 

27

Таблица 4.10 - Таблица “Отчеты”

Номер

Номер

Дата

отчета

бригады

отчета

001

01

05.05.04

002

01

10.05.04

003

01

15.05.04

004

01

20.05.04

005

01

25.05.04

006

01

31.05.04

Номер

Номер

Дата

отчета

бригады

отчета

007

01

10.06.04

008

02

10.06.04

009

01

20.06.04

010

02

20.06.04

011

01

30.06.04

012

02

30.06.04

Таблица 4.11 - Таблица "ПозицииОтчетов"

 

 

Код

Кол-

 

Код

Кол-

 

Код

Кол-

отч.

п/п

прод.

во

 

отч.

п/п

прод.

во

 

отч.

п/п

прод.

во

001

1

0001

10

 

004

2

0001

10

 

008

 

1

0009

50

001

2

0003

5

 

004

3

0007

100

 

008

 

2

0010

50

001

3

0006

1

 

004

4

0004

1

 

008

 

3

0008

40

002

1

0004

3

 

005

1

0005

5

 

009

 

1

0003

150

002

2

0002

2

 

005

2

0007

10

 

009

 

2

0004

10

002

3

0008

5

 

005

3

0002

3

 

009

 

3

0003

25

003

1

0004

2

 

005

4

0006

5

 

010

 

1

0009

20

003

2

0005

15

 

006

1

0007

15

 

010

 

2

0002

30

003

3

0002

1

 

006

2

0004

2

 

010

 

3

0003

30

003

4

0006

2

 

007

1

0002

10

 

011

 

1

0002

15

003

5

0003

10

 

007

2

0007

25

 

011

 

2

0004

7

003

6

0001

5

 

007

3

0005

25

 

012

 

1

0001

100

004

1

0003

10

 

007

4

0001

20

 

012

 

2

0004

10

Таблица 4.12 - Таблица "Назначения"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таб.

 

 

Дата

 

Дата

 

 

 

 

 

 

 

 

 

 

 

 

отмены

 

 

 

 

 

 

назначен.

бриг.

номер

назначения

 

 

 

 

 

 

 

 

назначения

 

 

 

 

 

 

0000001

 

01

00001

 

02.05.04

 

 

 

 

 

 

 

 

 

 

0000002

 

01

00002

 

02.05.04

 

05.07.04

 

 

 

 

 

 

0000003

 

01

00003

 

02.05.04

 

30.07.04

 

 

 

 

 

 

0000004

 

02

00004

 

31.05.04

 

 

 

 

 

 

 

 

 

 

0000005

 

02

00005

 

01.06.04

 

 

 

 

 

 

 

 

 

 

0000006

 

02

00006

 

01.06.04

 

 

 

 

 

 

 

 

 

 

0000007

 

03

00007

 

01.07.04

 

 

 

 

 

 

 

 

 

 

0000008

 

04

00008

 

01.07.04

 

 

 

 

 

 

 

 

 

 

0000009

 

04

00009

 

05.07.04

 

 

 

 

 

 

 

 

 

 

0000010

 

04

00010

 

05.07.04

 

 

 

 

 

 

 

 

 

 

0000011

 

03

00003

 

05.07.04

 

 

 

 

 

 

 

 

 

 

0000012

 

03

00002

 

05.07.04

 

 

 

 

 

 

 

 

 

28