Диплом (1189781), страница 3
Текст из файла (страница 3)
Таблица 15 – Структура таблицы «Фидера питающих станций»
| Название поля | Тип | Null | Ключ | Дополнительно |
| Кода фидера пит. станции | int | нет | первичный | auto_increment |
| Код пит. станции | int | да | вторичный | |
| Фидер | int | да | ||
| Примечание | varchar(35) | да | ||
| Описание фидера пит. ст. | varchar(255) | да |
Структура таблицы «Фидеры ТП» представлена в таблице 16.
Таблица 16 – Структура таблицы «Фидеры ТП»
| Название поля | Тип | Null | Ключ | Дополнительно |
| Код фидера ТП | int | нет | первичный | auto_increment |
| Код ТП | int | да | вторичный | |
| Фидер | int | да | ||
| Код типа фидера | int | да | вторичный | |
| Фидер из имп. | varchar(35) | да | ||
| Описание фидера ТП | varchar(255) | да |
Структура таблицы «Показания в точке подключения» представлена в таблице 17.
Таблица 17 – Структура таблицы «Показания в точке подключения»
| Название поля | Тип | Null | Ключ | Дополнительно |
| Код показания | int | нет | первичный | auto_increment |
| Источник | varchar(25) | да | ||
| ОБД | int | да | ||
| Дата показаний | date | да | ||
| Код адреса | int | да | вторичный | |
| Код счетчика | int | да | вторичный | |
| Текущие показания | int | да | ||
| Предыдущие показания | int | да | ||
| Кол-во эл. Энергии | int | да | ||
| Расч. кол-во эл. энергии | int | да | ||
| Процент потерь | float | да | ||
| Коэфф. т. | int | да | ||
| Тип потребителя | varchar(25) | да | ||
| Показания на к. | int | да | ||
| Код фидера ТП | int | да | вторичный | |
| Код фидера пит. ст. | int | да | вторичный | |
| Код класса напряжения | int | да | вторичный | |
| Когда добавлены | varchar(25) | да | ||
| Код работника | int | да | вторичный | |
| № точки | int | да | ||
| Фазность | int | да | ||
| Код потребителя | int | да | вторичный |
Структура таблицы «Авторизация» представлена в таблице 18.
Таблица 18 – Структура таблицы «Авторизация»
| Название поля | Тип | Null | Ключ | Дополнительно |
| Код показания | int | нет | первичный | auto_increment |
| Логин | varchar(255) | да | ||
| Пароль | varchar(255) | да |
Подробнее об используемых типах данных и других характеристик полей базы данных написано в главе «Разработка базы данных». На рисунке 1 приведены связи между таблицами.
Рисунок 1 – Структура базы данных
Таким образом, в данном подразделе показана структура таблиц базы данных ООО «Сетевая энергетическая компания» и связи между ними. Так как на данном этапе известны таблицы и функции, которые должна поддерживать база данных, то необходимо перейти к разработке макета интерфейса пользователя.
2.2 Макет интерфейса АИС
При входе пользователя в систему, ему предоставляется интерфейс для работы с таблицами из базы данных. На рисунке 2 показан макет главного окна, который состоит из трех компонентов. В верхней части главного окна стандартно располагается иконка, название предприятия и кнопки для сворачивания, разворачивания и закрытия АИС. Меню содержит четыре раскрывающихся списка: данные, справочники, объекты учета, показания. Оставшаяся часть окна самая большая и предназначена для отображения таблиц, которые выберет пользователь.
Рисунок 2 – Макет главного окна
В раскрывающемся меню «Данные» содержатся действия, которые можно применять к записям базы данных: добавить, редактировать, удалить, фильтр, печать (рисунок 3). Указанные действия выполняются в зависимости от того, какая таблица активна на данный момент.
Рисунок 3 – Меню «Данные»
В меню «Справочники» содержатся таблицы, на основе которых не составляются отчеты, а они созданы для удобства нахождения и добавления необходимой информации. Тем не менее, при необходимости, можно вывести содержащиеся в справочниках данные в документ или распечатать. Меню «Справочники» хранит следующие таблицы: адреса, потребители, класс напряжения, тип счетчика, счетчики, питающие станции, объекты, сотрудники, тип населенного пункта, населенный пункт, тип улицы, улица, трансформаторные подстанции, тип фидера. К данным таблицам могут применяться действия добавить, редактировать, удалить запись.
«Объекты учета» содержат в себе таблицы: фидеры ТП, фидеры питающих станций. «Показания» включают показания в точке подключения за различные периоды. По данной таблице есть возможность формирования отчета и фильтрование отображаемых данных по дате снятия показаний.
3 ВЫБОР ПРОГРАММНЫХ СРЕДСТВ
3.1 Системы управления базами данных
Система управления базами данных (СУБД) – совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных [6].
Реляционная СУБД – система управления реляционными базами данных. В реляционных базах данные хранятся в виде таблиц, состоящих из строк и столбцов. Каждая таблица имеет собственный, заранее определенный набор именованных полей. Столбцы таблиц реляционной базы могут содержать скалярные данные фиксированного типа. Таблицы в реляционной базе данных могут быть связаны отношениями «один-к-одному» или «один-ко-многим». Количество строк записей в таблице неограниченно, и каждая запись соответствует отдельной сущности [7].
Для управления реляционными базами данных применяется язык программирования – Structured Query Language (SQL). Команды, которые используются в языке структурированных запросов, делятся на те, которые манипулируют данными, те, которые определяют данные, и те, которые управляют данными.
Схема работы с базой данных представлена на рисунке 4.
Рисунок 4 – Схема работы с базой данных
Реляционные базы данных занимают сейчас доминирующее положение. Иерархическая и сетевая структуры баз данных ушли в прошлое, уступив свое место реляционным базам, под которые построено большинство современных СУБД сравнительный анализ которых, приведен в этом подразделе.
3.1.1 SQLite
SQLite – компактная встраиваемая реляционная база данных. SQLite не использует парадигму клиент-сервер, то есть движок SQLite не является отдельно работающим процессом, с которым взаимодействует программа, а предоставляет библиотеку, с которой программа компонуется, и движок становится составной частью программы. Таким образом, в качестве протокола обмена используются вызовы функций (API) библиотеки SQLite. Такой подход уменьшает накладные расходы, время отклика и упрощает программу [8]. Логотип программы представлен на рисунке 5.
Рисунок 5 – Логотип SQLite
SQLite хранит всю базу данных в единственном стандартном файле на том компьютере, на котором исполняется программа. Простота реализации достигается за счёт того, что перед началом исполнения транзакции записи весь файл, хранящий базу данных, блокируется.
Преимущества [9]:
– файловая структура – вся база данных состоит из одного файла, то есть база данных является легко переносимой на разные машины;
– используемые стандарты – SQLite использует SQL, хотя некоторые функции опущены;
– отлично подходит для разработки и тестирования – в процессе разработки приложений часто появляется необходимость масштабирования. SQLite предоставляет достаточный функционал для достижения этой цели, так как состоит из одного файла и библиотеки написанной на языке C.
Недостатки:
– отсутствие пользовательского управления – в отличие от более крупных СУБД, в SQLite пользователям не предоставляется возможность управления связями в таблицах в соответствии с привилегиями;
– отсутствие возможности увеличения производительности – SQLite нельзя сделать более производительней, используя настройки.
В каких случаях нужно использовать SQLite:
– встроенные приложения: все портируемые не предназначенные для масштабирования приложения;
– система доступа к дисковой памяти: в большинстве случаев приложения, часто производящие прямые операции чтения/записи на диск, можно перевести на SQLite для повышения производительности;
– тестирование: подойдёт для большинства приложений, частью функционала которых является тестирование бизнес-логики.
Когда не стоит использовать SQLite:
– многопользовательские приложения: если осуществляется работа над приложением, доступом к БД в котором будут одновременно пользоваться несколько человек, лучше выбрать полнофункциональную РСУБД;
– приложения, записывающие большие объёмы данных: одним из ограничений SQLite являются операции записи.
3.1.2 MySQL
MySQL – свободная реляционная система управления базами данных. MySQL сочетает в себе скорость, компактность, стабильность и портируемость [10]. Несмотря на то, что в ней не реализован весь SQL функционал, MySQL предлагает довольно много инструментов для разработки приложений. Так как это серверная СУБД, приложения для доступа к данным, в отличии от SQLite работают со службами MySQL. Логотип программы представлен на рисунке 6.
Рисунок 6 – Логотип MySQL
Разработку и поддержку MySQL осуществляет корпорация Oracle, получившая права на торговую марку вместе с поглощённой Sun Microsystems, которая ранее приобрела шведскую компанию MySQL AB. MySQL возникла как попытка применить mSQL к собственным разработкам компании: таблицам, для которых использовались ISAM – подпрограммы низкого уровня. В результате был выработан новый SQL-интерфейс, но API-интерфейс остался в наследство от mSQL [11].















