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

Дальневосточный Государственный
Технический университет

Кафедра Информационных Систем Управления

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

К КУРСОВОМУ ПРОЕКТУ ПО ДИСЦИПЛИНЕ “БАЗЫ И БАНКИ ДАННЫХ”

Тема “Проектирование и реализация базы данных”

Выполнил студент гр. Э-282
Богдановский А. А.

Принял преподаватель
Сухомлинов А. И.

________________________

Дата
“ ” января 1996 г.

ОГЛАВЛЕНИЕ

СПИСОК ЛИТЕРАТУРЫ 7
Приложение I. Отчет по летней практике по теме “Инфологическое моделирование 8
Приложение II. Программные тексты, запросы и схема данных 13
Приложение III. Таблицы данных с информацией 17
Приложение IV. Примеры отчетов 19

Постановка задачи
Лаборатория инженерной океанологии (ЛИО) при дальневосточном научно-исследовательском гидрометеорологическом институте (ДВНИГМИ) производит расчеты предельно-допустимых сбросов (ПДС) для предприятий различных видов деятельности. Расчет производится с помощью специальных программ расчета ПДС по методике /1/.
Разработать и реализовать базу данных (БД) “ПДС”, обеспечивающую хранение, накопление и предоставление всей информации о предприятии-заказчике, необходимой для программы расчета ПДС.
Разработка базы данных “ПДС”
Разработка базы данных “ПДС” проводилась в работе по летней практике. В этой работе была составлена полная инфологическая модель базы данных с типами сущностей, типами связей, их атрибутами и графическим представлением модели.
Отчет по вышеуказанной летней практике представлен в данной пояснительной записке в приложении I.

Реализация базы данных “ПДС”
База данных “ПДС” была реализована на СУБД Microsoft Access 2.0 в среде Microsoft Windows 3.1 * . При выборе СУБД использовались /3-5/. В качестве руководства по генерации таблиц, экранных форм, запросов, отчетов, по программированию макрокоманд и программных модулей использовалась /2/.
База данных вместе с таблицами данных, экранными формами, запросами, отчетными формами в Microsoft Access представляется в одном файле. База данных “ПДС” хранится в файле PDS.MDB.
Схема данных, тексты макрокоманд и программное описание элементов управление приведены в разделе . Описание реализованного рабочего места (АРМ) на основе базы “ПДС” приводится в разделе настоящей записки.
Схема данных и программные тексты
Так как представление структуры базы данных, экранных форм, запросов, отчетных форм в Microsoft Access обеспечивается внутренней реализацией СУБД (в отличие от распространенных СУБД типа dBase, FoxPro, и т. д., в которых эти характеристики описываются программным путем), то представление полного программного кода базы данных, написанной на Microsoft Access является невозможным, в связи с отсутствием такового.
Однако, при создании экранных форм для присвоения различных функций элементам управления — кнопкам — использовался внутренний язык СУБД — Access Basic. Некоторые процедуры, написанные на этом языке, представлены в приложении II.
В базе данных “ПДС” для генерации двух отчетов используется два запроса. Хотя эти запросы генерировались визуальными средствами, но есть возможность представить их в виде SQL-запроса. Эти два SQL-запроса представлены также в приложении II.
Для связи таблиц баз данных, также как и для запросов, используется визуальная генерация. Схема данных в графическом виде представлена также в приложении II.
Описание автоматизированного рабочего места
В результате работы было создано автоматизированное рабочее место (АРМ) в виде набора связанных экранных форм и отчетов, позволяющее вводить, редактировать, просматривать данные по предприятиям, по выпускам предприятий, загрязняющие вещества, концентрации веществ по выпускам, контрольные створы для выпусков, параметры загрязняющих веществ в контрольных створах. Кроме того, имеется возможность генерации отчетов по данным о выпусках предприятия и о концентрации загрязненных веществ по конкретному выпуску.
После загрузки главного (и единственного) файла базы “ПДС” PDS.MDB из СУБД Microsoft Access на экране автоматически появляется следующий экран

Из главного экрана можно попасть в следующие экраны

Кнопка “Предприятия” — экран для работы с базой Предприятия (добавление, удаление, редактирование Предприятий и их выпусков, а также концентраций загрязняющих веществ по каждому выпусков)
Кнопка “Контрольные створы” — работа с базой контрольных створов вместе с базой загрязняющих веществ по каждому створу
Кнопка “Вещества” — добавление новых контролируемых загрязняющих веществ

Таким образом, программа “поддержки” базы данных “ПДС” содержит три главные экранные формы, с помощью которых можно вести базу данных. Кроме этих форм, существует еще несколько, которые являются вспомогательными и вызываются из форм, описанных выше. Вспомогательные формы в данной записке не приводятся из-за их малозначимости.
Результаты работы
В результате непродолжительной работы с базой данных “ПДС” с помощью разработанных экранных форм были введены данные о нескольких предприятиях с информацией о выпусках. Таблицы, представляющие эти данные представлены в приложении III.
В приложении IV представлены два вида отчетов, которые может генерировать БД “ПДС”.

СПИСОК ЛИТЕРАТУРЫ

Методика расчета предельно-допустимых сбросов (ПДС) веществ в водные объекты со сточными водами. — Харьков, 1990, — 115 c.
Электронная встроенная гипертекстовая справочная система Microsoft Access, файл MSACC20.HLP, 4.7 Мбайта.
Журнал “PC Magazine Russian Edition” №7 1994, статья У. Плейна, “Microsoft Access”.
Журнал “PC Magazine Russian Edition” №5 1994.
Журнал “КомпьюТерра” №37-38 1994.

Приложение II. Программные тексты, запросы и схема данных

ПРОЦЕДУРЫ ОПИСАНИЯ ФУНКЦИЙ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ ЭКРАННЫХ ФОРМ

Форма “Выпуски”

Sub ДобавлениеНовойЗапис_Click ()
On Error GoTo Err_ДобавлениеНовойЗапис_Click

DoCmd GoToRecord , , A_NEWREC

Exit_ДобавлениеНовойЗапис_Click
Exit Sub

Err_ДобавлениеНовойЗапис_Click
MsgBox Error$
Resume Exit_ДобавлениеНовойЗапис_Click

End Sub

Sub ДублироватьЗаписьВВы_Click ()
On Error GoTo Err_ДублироватьЗаписьВВы_Click

DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_SELECTRECORD_V2, , A_MENU_VER20
DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_COPY, , A_MENU_VER20
DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, 6, , A_MENU_VER20’Paste Append

Exit_ДублироватьЗаписьВВы_Click
Exit Sub

Err_ДублироватьЗаписьВВы_Click
MsgBox Error$
Resume Exit_ДублироватьЗаписьВВы_Click

End Sub

Sub УдалениеЗаписиВВыпус_Click ()
On Error GoTo Err_УдалениеЗаписиВВыпус_Click

DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_SELECTRECORD_V2, , A_MENU_VER20
DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_DELETE_V2, , A_MENU_VER20

Exit_УдалениеЗаписиВВыпус_Click
Exit Sub

Err_УдалениеЗаписиВВыпус_Click
MsgBox Error$
Resume Exit_УдалениеЗаписиВВыпус_Click

End Sub

Sub ВызовФормы_Концентра_Click ()
On Error GoTo Err_ВызовФормы_Концентра_Click

Dim DocName As String

DocName = Концентрация Стоков»
DoCmd OpenForm DocName, , , «[Выпуск] = Forms![Предприятие]![Выпуск].Form![Выпуск]»

Exit_ВызовФормы_Концентра_Click
Exit Sub

Err_ВызовФормы_Концентра_Click
MsgBox Error$
Resume Exit_ВызовФормы_Концентра_Click

End Sub

Sub Кнопка47_Click ()
On Error GoTo Err_Кнопка47_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «КонтрольныйСтвор»
LinkCriteria = «[Контрольный Створ] = Forms![Предприятие]![Выпуск].Form![Поле46]»
DoCmd OpenForm DocName, , , LinkCriteria

DoCmd GoToControl «Внедренный_объект16»
Forms![КонтрольныйСтвор]![ПереходКПервойЗаписиВПредприятиях].Доступ = 0
Forms![КонтрольныйСтвор]![ПереходКПредыдущейЗаписиВПредприятиях].Доступ = 0
Forms![КонтрольныйСтвор]![ПереходКСледующейЗаписиВПредприятиях].Доступ = 0
Forms![КонтрольныйСтвор]![ПереходКПоследнейЗаписиВПредприятиях].Доступ = 0
Forms![КонтрольныйСтвор]![Кнопка20].Доступ = 0
Forms![КонтрольныйСтвор]![Кнопка21].Доступ = 0
Forms![КонтрольныйСтвор]![Кнопка22].Доступ = 0
Forms![КонтрольныйСтвор]![Название].Доступ = 0

Exit_Кнопка47_Click
Exit Sub

Err_Кнопка47_Click
MsgBox Error$
Resume Exit_Кнопка47_Click

End Sub

Форма “Главная”

Sub Кнопка2_Click ()
On Error GoTo Err_Кнопка2_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «Предприятие»
DoCmd OpenForm DocName, , , LinkCriteria

Exit_Кнопка2_Click
Exit Sub

Err_Кнопка2_Click
MsgBox Error$
Resume Exit_Кнопка2_Click

End Sub

Sub Кнопка3_Click ()
On Error GoTo Err_Кнопка3_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «КонтрольныйСтвор»
DoCmd OpenForm DocName, , , LinkCriteria

Exit_Кнопка3_Click
Exit Sub

Err_Кнопка3_Click
MsgBox Error$
Resume Exit_Кнопка3_Click

End Sub

Sub Кнопка9_Click ()
On Error GoTo Err_Кнопка9_Click

DoCmd Close

Exit_Кнопка9_Click
Exit Sub

Err_Кнопка9_Click
MsgBox Error$
Resume Exit_Кнопка9_Click

End Sub

Sub Кнопка6_Click ()
On Error GoTo Err_Кнопка6_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «О программе»
DoCmd OpenForm DocName, , , LinkCriteria

Exit_Кнопка6_Click
Exit Sub

Err_Кнопка6_Click
MsgBox Error$
Resume Exit_Кнопка6_Click

End Sub

Sub Кнопка5_Click ()
On Error GoTo Err_Кнопка5_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «Вещество»
DoCmd OpenForm DocName, , , LinkCriteria

Exit_Кнопка5_Click
Exit Sub

Err_Кнопка5_Click
MsgBox Error$
Resume Exit_Кнопка5_Click

End Sub

Форма “КонтрольныйСтвор”

Sub Form_Close ()
Forms![КонтрольныйСтвор]![ПереходКПервойЗаписиВПредприятиях].Доступ = 1
Forms![КонтрольныйСтвор]![ПереходКПредыдущейЗаписиВПредприятиях].Доступ = 1
Forms![КонтрольныйСтвор]![ПереходКСледующейЗаписиВПредприятиях].Доступ = 1
Forms![КонтрольныйСтвор]![ПереходКПоследнейЗаписиВПредприятиях].Доступ = 1
Forms![КонтрольныйСтвор]![Кнопка20].Доступ = 1
Forms![КонтрольныйСтвор]![Кнопка21].Доступ = 1
Forms![КонтрольныйСтвор]![Кнопка22].Доступ = 1
Forms![КонтрольныйСтвор]![Название].Доступ = 1
End Sub

Sub ВыходИзФормыКонтроль_Click ()
On Error GoTo Err_ВыходИзФормыКонтроль_Click

DoCmd Close

Exit_ВыходИзФормыКонтроль_Click
Exit Sub

Err_ВыходИзФормыКонтроль_Click
MsgBox Error$
Resume Exit_ВыходИзФормыКонтроль_Click

End Sub

Sub Кнопка20_Click ()
On Error GoTo Err_Кнопка20_Click

DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, 10, , A_MENU_VER20

Exit_Кнопка20_Click
Exit Sub

Err_Кнопка20_Click
MsgBox Error$
Resume Exit_Кнопка20_Click

End Sub

Sub Кнопка21_Click ()
On Error GoTo Err_Кнопка21_Click

DoCmd GoToRecord , , A_NEWREC

Exit_Кнопка21_Click
Exit Sub

Err_Кнопка21_Click
MsgBox Error$
Resume Exit_Кнопка21_Click

End Sub

Sub Кнопка22_Click ()
On Error GoTo Err_Кнопка22_Click

DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_SELECTRECORD_V2, , A_MENU_VER20
DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_DELETE_V2, , A_MENU_VER20

Exit_Кнопка22_Click
Exit Sub

Err_Кнопка22_Click
MsgBox Error$
Resume Exit_Кнопка22_Click

End Sub

Sub ПереходКПервойЗаписи_Click ()
On Error GoTo Err_ПереходКПервойЗаписи_Click

DoCmd GoToRecord , , A_FIRST

Exit_ПереходКПервойЗаписи_Click
Exit Sub

Err_ПереходКПервойЗаписи_Click
MsgBox Error$
Resume Exit_ПереходКПервойЗаписи_Click

End Sub

Sub ПереходКПоследнейЗап_Click ()
On Error GoTo Err_ПереходКПоследнейЗап_Click

DoCmd GoToRecord , , A_LAST

Exit_ПереходКПоследнейЗап_Click
Exit Sub

Err_ПереходКПоследнейЗап_Click
MsgBox Error$
Resume Exit_ПереходКПоследнейЗап_Click

End Sub

Sub ПереходКПредыдущейЗа_Click ()
On Error GoTo Err_ПереходКПредыдущейЗа_Click

DoCmd GoToRecord , , A_PREVIOUS

Exit_ПереходКПредыдущейЗа_Click
Exit Sub

Err_ПереходКПредыдущейЗа_Click
If Err <> 2105 Then MsgBox Error$
Resume Exit_ПереходКПредыдущейЗа_Click

End Sub

Sub ПереходКСледующейЗап_Click ()
On Error GoTo Err_ПереходКСледующейЗап_Click

DoCmd GoToRecord , , A_NEXT

Exit_ПереходКСледующейЗап_Click
Exit Sub

Err_ПереходКСледующейЗап_Click
If Err <> 2105 Then MsgBox Error$
Resume Exit_ПереходКСледующейЗап_Click

End Sub

Форма “Концентрация Стоков”

Sub ЗакрытиеФормы_Концен_Click ()
On Error GoTo Err_ЗакрытиеФормы_Концен_Click

DoCmd Close

Exit_ЗакрытиеФормы_Концен_Click
Exit Sub

Err_ЗакрытиеФормы_Концен_Click
MsgBox Error$
Resume Exit_ЗакрытиеФормы_Концен_Click

End Sub

Sub ОтчетПоКонцентрациям_Click ()
On Error GoTo Err_ОтчетПоКонцентрациям_Click

Dim DocName As String

DocName = «ОтчетПоКонцентрациям»
DoCmd OpenReport DocName, A_PREVIEW

Exit_ОтчетПоКонцентрациям_Click
Exit Sub

Err_ОтчетПоКонцентрациям_Click
MsgBox Error$
Resume Exit_ОтчетПоКонцентрациям_Click

End Sub

Форма “Предприятие”

Sub Закрыть_Форму_Предпр_Click ()
On Error GoTo Err_Закрыть_Форму_Предпр_Click

DoCmd Close

Exit_Закрыть_Форму_Предпр_Click
Exit Sub

Err_Закрыть_Форму_Предпр_Click
MsgBox Error$
Resume Exit_Закрыть_Форму_Предпр_Click

End Sub

Sub Запустить_Форму_Выпу_Click ()
On Error GoTo Err_Запустить_Форму_Выпу_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «Выпуск»
DoCmd OpenForm DocName, , , LinkCriteria

Exit_Запустить_Форму_Выпу_Click
Exit Sub

Err_Запустить_Форму_Выпу_Click
MsgBox Error$
Resume Exit_Запустить_Форму_Выпу_Click

End Sub

Sub НоваяЗаписьВПредприя_Click ()
On Error GoTo Err_НоваяЗаписьВПредприя_Click

DoCmd GoToRecord , , A_NEWREC

Exit_НоваяЗаписьВПредприя_Click
Exit Sub

Err_НоваяЗаписьВПредприя_Click
MsgBox Error$
Resume Exit_НоваяЗаписьВПредприя_Click

End Sub

Sub ОтчетПоВыпускам_Click ()
On Error GoTo Err_ОтчетПоВыпускам_Click

Dim DocName As String

DocName = «ОтчетПоВыпускамПредприятия»
DoCmd OpenReport DocName, A_PREVIEW

Exit_ОтчетПоВыпускам_Click
Exit Sub

Err_ОтчетПоВыпускам_Click
MsgBox Error$
Resume Exit_ОтчетПоВыпускам_Click

End Sub

Sub ПереходКПервойЗаписи_Click ()
On Error GoTo Err_ПереходКПервойЗаписи_Click

DoCmd GoToRecord , , A_FIRST

Exit_ПереходКПервойЗаписи_Click
Exit Sub

Err_ПереходКПервойЗаписи_Click
MsgBox Error$
Resume Exit_ПереходКПервойЗаписи_Click

End Sub

Sub ПереходКПоследнейЗап_Click ()
On Error GoTo Err_ПереходКПоследнейЗап_Click

DoCmd GoToRecord , , A_LAST

Exit_ПереходКПоследнейЗап_Click
Exit Sub

Err_ПереходКПоследнейЗап_Click
MsgBox Error$
Resume Exit_ПереходКПоследнейЗап_Click

End Sub

Sub ПереходКПредыдущейЗа_Click ()
On Error GoTo Err_ПереходКПредыдущейЗа_Click

DoCmd GoToRecord , , A_PREVIOUS

Exit_ПереходКПредыдущейЗа_Click
Exit Sub

Err_ПереходКПредыдущейЗа_Click
If Err <> 2105 Then MsgBox Error$
Resume Exit_ПереходКПредыдущейЗа_Click

End Sub

Sub ПереходКСледующейЗап_Click ()
On Error GoTo Err_ПереходКСледующейЗап_Click

DoCmd GoToRecord , , A_NEXT

Exit_ПереходКСледующейЗап_Click
Exit Sub

Err_ПереходКСледующейЗап_Click
If Err <> 2105 Then MsgBox Error$
Resume Exit_ПереходКСледующейЗап_Click

End Sub

Sub ПоискЗаписиВПредприя_Click ()
On Error GoTo Err_ПоискЗаписиВПредприя_Click

DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, 10, , A_MENU_VER20

Exit_ПоискЗаписиВПредприя_Click
Exit Sub

Err_ПоискЗаписиВПредприя_Click
MsgBox Error$
Resume Exit_ПоискЗаписиВПредприя_Click

End Sub

Sub Редактирование_Выпус_Click ()
On Error GoTo Err_Редактирование_Выпус_Click

Dim DocName As String
Dim LinkCriteria As String

DocName = «Выпуск»
LinkCriteria = «[Предприятие] = [Предприятие]![Предприятие]»
DoCmd OpenForm DocName, , , LinkCriteria

Exit_Редактирование_Выпус_Click
Exit Sub

Err_Редактирование_Выпус_Click
MsgBox Error$
Resume Exit_Редактирование_Выпус_Click

End Sub

Sub СписокПредприятийДля_AfterUpdate ()
DoCmd ApplyFilter , «НазваниеПредприятие = Me![СписокПредприятийДляПоиска]»
End Sub

Sub УдалениеЗаписиВПредп_Click ()
On Error GoTo Err_УдалениеЗаписиВПредп_Click

DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_SELECTRECORD_V2, , A_MENU_VER20
DoCmd DoMenuItem A_FORMBAR, A_EDITMENU, A_DELETE_V2, , A_MENU_VER20

Exit_УдалениеЗаписиВПредп_Click
Exit Sub

Err_УдалениеЗаписиВПредп_Click
MsgBox Error$
Resume Exit_УдалениеЗаписиВПредп_Click

End Sub

ЗАПРОСЫ ДЛЯ СОЗДАНИЯ ОТЧЕТОВ (В ФОРМЕ SQL)

Запрос “ЗапросДляОтчетаПоВыпускам”
SELECT DISTINCTROW Предприятие.НазваниеПредприятия, Выпуск.НазваниеВыпуска, Выпуск.Расход, Выпуск.Диаметр, Выпуск.РасстояниеДоБерега, Выпуск.Глубина, Выпуск.СкоростьТечения
FROM Предприятие INNER JOIN Выпуск ON Предприятие.Предприятие = Выпуск.Предприятие
WHERE ((Предприятие.НазваниеПредприятия=[Forms]![Предприятие]![НазваниеПредприятия]));

Запрос “ЗапросДляОтчетаПоКонцентрациям”
SELECT DISTINCTROW Выпуск.НазваниеВыпуска, Вещество.Название, СвязьКонцентрацияСтока.Коцентрация, Выпуск.Выпуск
FROM Выпуск INNER JOIN (Вещество INNER JOIN СвязьКонцентрацияСтока ON Вещество.Вещество = СвязьКонцентрацияСтока.Вещество) ON Выпуск.Выпуск = СвязьКонцентрацияСтока.Выпуск
WHERE ((Выпуск.Выпуск=[forms]![Концентрация Стоков]![Выпуск]));

СХЕМА ДАННЫХ

Приложение III. Таблицы данных с информацией

Таблица “Вещество”

Вещество
Название

22
Взвешенные вещества

23
Растворенный кислород

24
БПК полное

25
БПК 5

26
ХПК

27
Аммоний солевой

28
Азот аммонийный

29
Сухой остаток

30
Нитриты

31
Нитраты

32
Нефтепродукты

33
Фенолы

34
Амминосульфаты (гр. СПАВ)

35
Амминосульфонаты (гр. СПАВ)

36
Минерализация

37
Хлориды (для пресн.)

38
Хлориды

39
Сульфаты

Таблица “Выпуск”

Выпуск
Предприятие
Контрольный створ
Название Выпуска
Расход
Диаметр
Расстояние ДоБерега
Глубина
Плотность Стоков
Скорость Течения
Направление Течения

24
5
1
Выпуск N1
0.02
0.2
1
1.2
1.03
120
0

25
5
1
Выпуск N2
0.05
0.2
0
1.2
1.03
120
0

26
6
2
Выпуск N1
0.00143
0.25
205
4.35
1.003
15
1

27
7
4
Выпуск N1
0.0045
0.2
15
2.3
1.02
20
0

29
7
4
Выпуск N4
0.0032
0.25
0
1.2
1.02
20
0

30
7
4
Выпуск N5
0.08
0.25
0
1.2
1.02
20
0

32
8
3
Выпуск в кутовую часть бухты
0.00432
0.2
0.2
2.2
1.033
0.1
0

Таблица “Контрольный Створ”

Контрольный Створ
Название

1
р. Светлое

2
б. Андреева

3
б. Малый Гайдамак

4
з. Восточный

Таблица “Предприятие”

Предприятие
НазваниеПредприятия

5
Рыбзавод «Светлое»

6
Рыбколхоз «Новый Мир»

7
Порт «Восточный»

8
ГСРЗ «Гайдамак»

Таблица “СвязьВеществаКонтрольногоСтвора”

Вещества Контрольного Створа
Вещество
Контрольный Створ
ПДК
Фон
КНК

1
22
1
2.75
2.5
0

2
25
1
1.8
3.5
0.03

3
28
1
0.05
0.03
0.1

4
31
1
0.005
0.0006
0.3

5
26
1
1.5
0
0

6
29
1
10.3
0
0

7
36
1
1.2
0
0

8
37
1
300
10
0

9
22
2
2.75
2.5
0

10
23
2
1.3
2.5
0.4

11
24
2
3.4
5.6
0.005

12
25
2
1.8
0.04
0

13
26
2
1.5
0.05
0.05

14
27
2
2.3
1.2
0

15
22
4
2.75
2.5
0.01

16
24
4
3.4
2.3
0

17
23
4
1.3
1.1
0

18
25
4
1.8
0.1
0

19
27
4
2.3
0.0001
0.06

Таблица “СвязьКонцентрацияСтока”

Концентрация В Сточной Воде
Вещество
Выпуск
Коцентрация

5
22
30
2

7
23
30
0.2

8
28
30
0.32

9
29
30
0.0004

10
26
30
0

11
25
30
1.4

12
36
30
0

13
37
30
0

14
25
30
0

15
24
24
2.4

16
28
24
0.01

17
31
24
0.001

18
36
24
0

19
32
24
0.005

20
37
24
10

21
34
24
1.2

22
30
24
0.0003

23
39
24
0

24
23
26
1.2

25
29
26
1

26
24
26
2.8

27
26
26
0.02

28
27
26
0.003

29
23
25
0.1

30
24
25
2.4

31
27
25
1.2

32
29
25
1.3

33
36
25
0

34
26
25
0

35
35
25
0.002

36
22
27
4.8

37
23
27
10.12

38
25
27
12.89

39
22
29
13.4

40
23
29
12.8

41
24
29
4.6

42
25
29
1.2

43
22
32
0.02

44
23
32
0.06

45
29
32
1.2

46
36
32
5.6

Приложение IV. Примеры отчетов

ОТЧЕТ ПО ВЫПУСКАМ ПРЕДПИЯТИЯ

Информация о выпусках предприятия

Название предприятия Рыбзавод «Светлое»

Название выпуска Выпуск N1

Расход 0.02 куб. м/с

Диаметр 0.2 м

Расстояние до берега 1 м

Глубина 1.2 м

120 м/с
Скорость течения

Название предприятия Рыбзавод «Светлое»

Название выпуска Выпуск N2

Расход 0.05 куб. м/с

Диаметр 0.2 м

Расстояние до берега 0 м

Глубина 1.2 м

120 м/с
Скорость течения

ОТЧЕТ ПО ЗАГРЯЗНЯЮЩИМ ВЕЩЕСТВАМ ВЫПУСКА

Концентрации веществ по выпуску

Выпуск N1

Предприятие Рыбзавод «Светлое»

Вещество Концентрация
(мг/л)
БПК полное 2.4
Азот аммонийный 0.01
Нитраты 0.001
Минерализация 0
Нефтепродукты 0.005
Хлориды (для пресн.) 10
Амминосульфаты (гр. СПАВ) 1.2
Нитриты 0.0003
Сульфаты 0

* Базы данных Microsoft Access принадлежат к типу реляционных баз данных. В таких базах данных сведения, относящиеся к различным вопросам, сохраняются в отдельных таблицах. Возможность вывода информации из базы данных обеспечивается указанием соотношений между объектами. (вырезка из /2/).

Владивосток
1996

M

Дальневосточный Государственный
Технический Университет

Кафедра Технической Кибернетики и Информатики

ОТЧЕТ
по летней практике

Тема “Инфологическое моделирование базы данных”

Студент группы Э-282
Богдановский А. А.

Преподаватель
Сухомлинов А. И.

Владивосток
1995
Постановка задачи

Составить инфологическую модель базы данных (БД), необходимой для предоставления информации программе расчета предельно-допустимых сбросов (ПДС) сточных вод предприятий в прибрежную зону моря.
Эта программа производит расчет максимально-допустимых концентраций загрязняющих веществ в выпусках сточной воды
Предприятие, для которого производится расчет ПДС может иметь несколько выпусков. Каждый выпуск характеризуется своими техническими параметрами, которые учитываются в расчетах. Каждый выпуск имеет свой набор загрязняющих веществ. Для каждого выпуска существует свой контрольный створ (точка на море, отстоящая от места выпуска на 50-500 м, в которой производится замер концентраций загрязняющих веществ). Несколько выпусков могут иметь один и тот же контрольный створ, но не наоборот.
Расчет производится для каждого выпуска в отдельности в два этапа. Первый — это расчет для каждого загрязняющего вещества индивидуального ПДС (без учета других веществ) по специальной методике*. Для этого расчета требуются следующие данные фоновая концентрация вещества в контрольном створе, концентрация вещества в сточных водах выпуска, диаметр выпускного отверстия, минимальная скорость морского течения в месте выпуска, расход сточных вод, угол истечения стоков относительно поверхности моря, расстояние от выпуска до поверхности моря, до берега и до ближайшей границы водопользования (т. е. до контрольного створа), коэффициент неконсервативности (КНК) вещества, предельно допустимая концентрация (ПДК) вещества в контрольном створе.
Второй этап — расчет ПДС для каждого вещества на основе индивидуального ПДС с учетом других веществ, находящихся в одной группе с одинаковым лимитирующим фактором вредности (ЛФВ) или в одной группе с одинаковым классом опасности. Распределение веществ по группам ЛФВ и классам опасности происходит в зависимости от типа водопользования предприятия, для которого считается ПДС.
Проектируемая БД должна содержать информацию по всем предприятиям, для которых производился расчет ПДС. Значения фоновых концентраций, концентраций в стоках и ПДК веществ должны быть закреплены за датой.

Таким образом, программе расчета ПДС требуются следующие данные

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

Типы сущностей и атрибуты

Тип сущности
Атрибуты

Предприятие
Код, Наименование

Выпуск
Код, Наименование, <Технические характеристики>

КонтрольныйСтвор
Код, Наименование

Вещество
Код, Наименование

ТипВодопользования
Код, Наименование

ЛФВ
Код, Наименование

КлассОпасности
Код, Наименование

Типы связей и атрибуты

Тип связи
Типы сущностей
Атрибуты

ИмеетВыпуск
Предприятие, Выпуск

ИмеетТипВодопользования
Предприятие, ТипВодопользования

ИмеетКонтрольныйСтвор
Выпуск, КонтрольныйСтвор

КонцентрацияСтока
Выпуск, Вещество
Концентрация, Дата

КонцентрацияФона
КонтрольныйСтвор, Вещество
Концентрация, Дата

КонцентрацияПД
КонтрольныйСтвор, Вещество
Концентрация, Дата

КНК
КонтрольныйСтвор, Вещество
Коэффициент, Дата

ГруппыПоЛФВ
ТипВодопользования, Вещество, ЛФВ

ГруппыПоКлассуОпасности
ТипВодопользования, Вещество, КлассОпасности

Ограничения

Ключи

Атрибут
Тип сущности/связи

Код
Предприятие

Код
Выпуск

Код
КонтрольныйСтвор

Код
Вещество

Код
ТипВодопользования

Код
ЛФВ

Код
КлассОпасности

Дата
КонцентрацияСтока

Дата
КонцентрацияФона

Дата
КонцентрацияПД

Дата
КНК

Виды связей

Один-к-одному ИмеетТипВодопользования
Один-ко-многим ИмеетВыпуск Предприятие Ю Выпуск ИмеетКонтрольныйСтвор КонтрольныйСтвор Ю Выпуск
Многие-ко-многим КонцентрацияСтока КонцентрацияФона КонцентрацияПД КНК

Ограничения по существованию

ИмеетВыпуск
Предприятие Ю Выпуск

Графическое представление инфологической модели (ER-диаграмма)

* ВНИИВО, “Методика расчета ПДС веществ в водные объекты со сточными водами”, Харьков 1990 г.

M

«