Дальневосточный
Государственный
Технический
университетКафедра
Информационных
Систем Управления
ПОЯСНИТЕЛЬНАЯ
ЗАПИСКА
К КУРСОВОМУ
ПРОЕКТУ ПО
ДИСЦИПЛИНЕ
“БАЗЫ И БАНКИ
ДАННЫХ”
Тема: “Проектирование
и реализация
базы данных”
Выполнил
студент гр.
Э-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