Автор работы: Пользователь скрыл имя, 12 Марта 2012 в 19:19, курсовая работа
В настоящее время уровень компьютеризации во всех сферах человеческой жизни достиг небывалых высот. Уже трудно представить какое либо крупное промышленное предприятие без компьютерного управления производством, наука шагает семимильными шагами опять же благодаря компьютерным технологиям, медицина стала более эффективна благодаря «умным машинам».
Введение 3
1. Основные понятия
1.1 Описание среды разработки. 4
1.2 Организация баз данных 5
1.3 Поддержка языков БД 7
1.4 BDE………………………………………………………………….8
1.5 Архитектура СУБД 9
2. Постановка задачи 11
3. Использованные инструменты Delphi 12
4. Описание базы данных 12
4.1 Связь таблиц……………………………………………………….. 13
5. Структура программного продукта 14
5.1 Межмодульные связи………………………………………………15
6. Разработанные алгоритмы по теме работы…….....…………16
6.1 Сортировка………………………………………………………….16
6.2 Поиск………………………………………………………………...16
6.3 Фильтрация………………………………………………………….16
6.4 Формирование запросов……………………………………………16
6.5 Формирование отчетов 16
7. Описание пользовательского интерфейса 17
8. Заключение 23
9. Список использованной литературы 24
Приложение А. Текст программы. 18
Приложение Б. Экранные формы. 35
• • Допустимость только навигационного принципа доступа к данным.
• • Доступ к данным производится только через корневое отношение.
Необходимо отметить следующие преимущества сетевой модели данных.
• • Универсальность. Выразительные возможности сетевой модели данных являются наиболее обширными в сравнении с остальными моделями.
• • Возможность доступа к данным через значения нескольких отношений (например, через любые основные отношения).
В качестве недостатков сетевой модели данных можно назвать.
• • Сложность, т.е. обилие понятий, вариантов их взаимосвязей и особенностей реализации.
• • Допустимость только навигационного принципа доступа к данным.
На окончательный выбор модели данных влияют многие дополнительные факторы, например, наличие хорошо зарекомендовавших себя СУБД, квалификация прикладных программистов, размер базы данных и др.
В последнее время реляционные СУБД заняли преимущественное положение как средство разработки. Недостатки реляционной модели компенсируются ростом быстродействия и ресурсов памяти современных ЭВМ.
1.3 Поддержка языков БД.
Для работы с базами данных используются специальные языки, в целом называемые языками баз данных. В ранних СУБД поддерживалось несколько специализированных по своим функциям языков. Чаще всего выделялись два языка - язык определения схемы БД (SDL -Schema Definition Language) и язык манипулирования данными (DML - Data Manipulation Language). SDL служил главным образом для определения логической структуры БД, т.е. той структуры БД, какой она представляется пользователям. DML содержал набор операторов манипулирования данными, т.е. операторов, позволяющих заносить данные в БД, удалять, модифицировать или выбирать существующие данные
В современных СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД, начиная от ее создания, и обеспечивающий базовый пользовательский интерфейс с базами данных. Стандартным языком наиболее распространенных в настоящее время реляционных СУБД является язык SQL (Structured Query Language).
Прежде всего, язык SQL сочетает средства SDL и DML, т.е. позволяет определять схему реляционной БД и манипулировать данными. При этом именование объектов БД (для реляционной БД - именование таблиц и их столбцов) поддерживается на языковом уровне в том смысле, что компилятор языка SQL производит преобразование имен объектов в их внутренние идентификаторы на основании специально поддерживаемых служебных таблиц-каталогов. Внутренняя часть СУБД (ядро) вообще не работает с именами таблиц и их столбцов.
Язык SQL содержит специальные средства определения ограничений целостности БД. Ограничения целостности хранятся в специальных таблицах-каталогах, и обеспечение контроля целостности БД производится на языковом уровне, т.е. при компиляции операторов модификации БД компилятор SQL на основании имеющихся в БД ограничений целостности генерирует соответствующий программный код.
Специальные операторы языка SQL позволяют определять так называемые представления БД, фактически являющиеся хранимыми в БД запросами (результатом любого запроса к реляционной БД является таблица) с именованными столбцами. Для пользователя представление является такой же таблицей, как любая базовая таблица, хранимая в БД, но с помощью представлений можно ограничить или наоборот расширить видимость БД для конкретного пользователя. Поддержание представлений производится также на языковом уровне. Наконец, авторизация доступа к объектам БД производится также на основе специального набора операторов SQL. Идея состоит в том, что для выполнения операторов SQL разного вида пользователь должен обладать различными полномочиями. Пользователь, создавший таблицу БД, обладает полным набором полномочий для работы с этой таблицей. Полномочия пользователей описываются в специальных таблицах-каталогах, контроль полномочий поддерживается на языковом уровне.
1.4 BDE.
BDE (Borland Database Engine) представляет собой набор динамических библиотек, которые "умеют" передавать запросы на получение или модификацию данных из приложения в нужную базу данных и возвращать результат обработки. В процессе работы библиотеки используют вспомогательные файлы языковой поддержки и информацию о настройках среды.
В составе BDE поставляются стандартные драйверы, обеспечивающие доступ к СУБД Paradox, dBASE, FoxPro и текстовым файлам. Локальные драйверы устанавливаются автоматически совместно с ядром процессора. Один из них можно выбрать в качестве стандартного драйвера, который имеет дополнительные настройки, влияющие на функционирование процессора БД.
Доступ к данным серверов SQL обеспечивает отдельная система драйверов — SQL Links. С их помощью в Delphi можно без особых проблем разрабатывать приложения для серверов Oracle 8, Informix, Sybase, DB2 и, естественно, InterBase. Эти драйверы необходимо устанавливать дополнительно.
Помимо этого, в BDE имеется очень простой механизм подключения любых драйверов ODBC (к примеру, Microsoft Access) и создания на их основе сокетов ODBC.
В состав BDE входят следующие функциональные подсистемы:
• Администратор системных ресурсов управляет процессом подключения к данным при необходимости устанавливает нужные драйверы, а при завершении работы автоматически освобождает занятые ресурсы. Поэтому BDE всегда использует ровно столько ресурсов, сколько необходимо.
• Система обработки запросов обеспечивает выполнение запросов SQL или QBE от приложения к любым базам данных, для которых установлен драйвер, даже если сама СУБД не поддерживает прямое использование запросов SQL.
• Система сортировки является запатентованной технологией и обеспечивает очень быстрый поиск по запросам SQL и через стандартные драйверы для Paradox и dBASE.
• Система пакетной обработки представляет собой механизм преобразования данных из одного формата в другой при выполнении операций над целыми таблицами. Эта система использована в качестве основы для компонента TBatcMove и утилиты DataPump (автоматического переноса структур данных между базами данных), входящей в стандартную поставку BDE.
• Менеджер буфера управляет единой для всех драйверов буферной областью памяти, которую одновременно могут использовать несколько драйверов. Это позволяет существенно экономить системные ресурсы.
• Менеджер памяти взаимодействует с ОС и обеспечивает эффективное использование выделяемой памяти. Ускоряет работу драйверов, которые для получения небольших фрагментов памяти обращаются к нему, а не к ОС. Дело в том, что менеджер памяти выделяет большие объемы оперативной памяти и затем распределяет ее небольшими кусками между драйверами согласно их потребностям.
• Транслятор данных обеспечивает преобразование форматов данных для различных типов БД.
• Кэш BLOB используется для ускорения работы с данными в формате BLOB.
• SQL-генератор транслирует запросы в формате QBE в запросы SQL.
• Система реструктуризации обеспечивает преобразование наборов данных в таблицы Paradox или dBASE.
• Система поддержки драйверов SQL повышает эффективность механизма поиска при выполнении запросов SQL.Таблицы в памяти. Этот механизм позволяет создавать таблицы непосредственно в оперативной памяти. Используется для ускорения обработки больших массивов данных, сортировки, преобразования форматов данных.
• Связанные курсоры обеспечивают низкоуровневое выполнение межтабличных соединений. Позволяют разработчику не задумываться над реализацией подобных связей при работе на уровне VCL — для этого достаточно установить значения нескольких свойств.
• Менеджер конфигурации обеспечивает разработчику доступ к информации о конфигурации драйверов.
1.5 Архитектура СУБД.
Все системы управления базами данных можно условно разделить на пять больших групп в зависимости от взаимного расположения приложения и таблиц базы данных:
• локальные;
• файл-серверные;
• клиент-серверные;
• распределенные;
• Интернет-архитектура.
Локальная архитектура
И программа, и база данных расположены на одном компьютере. В такой архитектуре работает большинство настольных приложений.
Файл-серверная структура.
База данных находится на мощном выделенном компьютере (сервере), а персональные компьютеры подключены к нему по локальной сети. Преимущество такой архитектуры заключается в возможности одновременной работы нескольких пользователей с одной базой данных. Недостаток этого подхода - большие объемы информации, передаваемые по сети. Вся обработка выполняется на клиентских местах, где фактически формируется копия базы данных. Это приводит к вынужденному ограничению максимально возможного числа пользователей и к большим задержкам при работе с базой. Эти задержки вызываются тем, что на уровне конкретной таблицы одновременный доступ не возможен. Это называется блокировкой на уровне таблицы и исключает возникновение путаницы в ее содержимом.
Клиент-серверная архитектура.
В такой архитектуре на сервере хранится не только база данных, но и работает программа СУБД, обрабатывающая запросы пользователей и возвращающая им наборы записей. При этом программы пользователей уже не работают напрямую с базой данных как с набором физических данных, а обращаются к СУБД, которая выполняет операции. Нагрузка с клиентских мест при этом снимается, т.к. большая часть работы происходит на сервере. СУБД автоматически следит за целостностью и сохранностью базы данных, а также контролирует доступ к информации с помощью службы паролей. Клиент-серверные СУБД допускают блокировку на уровне записи и даже отдельного поля. Это означает, что с таблицей одновременно может работать любое число пользователей, но доступ к функции изменения конкретной записи или одного из ее полей обеспечен только одному из них.
Основной недостаток этой архитектуры - не очень высокая надежность. Если сервер выходит из строя, то работа всех пользователей останавливается.
Распределенная структура.
В сети работает несколько серверов, и таблицы баз данных распределены между ними. На каждом сервере функционирует своя копия СУБД. Кроме того, в подобной архитектуре обычно используют специальные программы, так называемые серверы приложений. Они позволяют оптимизировать обработку запросов большого числа пользователей и равномерно распределить нагрузку между компьютерами в сети. Если, помимо работы с данными, требуется выполнить интенсивные вычисления (например, анализ сложной информации), программы для выполнения этих задач (они обычно называются компонентами) могут автоматически запускаться на более мощных сетевых компьютерах. Это практически полностью снимает нагрузку с клиентских мест. Такая архитектура называется компонентной. Недостаток распределенной архитектуры заключается в довольно сложном и дорогостоящем процессе ее создания и сопровождения (администрирования), а также в высоких требованиях к серверным компьютерам.
Интернет-архитектура
Доступ к базе данных и СУБД (расположенных на одном компьютере или в сети) осуществляется из браузера по стандартному протоколу. Это предъявляет минимальные требования к клиентскому оборудованию. Такие программы называют «тонкими клиентами».
Благодаря стандартизации всех протоколов и интерфейсов взаимодействия в Интернете такие системы легко создавать и внедрять. Например, можно не организовывать локальную сеть, а обращаться к серверу через Интернет или использовать протоколы Интернета в локальной сети (в таком случае говорят о технологиях интранет). В этом случае не требуется разрабатывать специальные клиентские программы или придумывать собственные спецификации обмена данными между сервером и клиентскими местами. Достаточно использовать готовые браузеры и программные решения.
2. Постановка задачи:
Целью работы является создание программного продукта, позволяющего облегчить и ускорить обработку и просмотр данных по загрязнениям окружающей среды, вносимыми предприятием «Воркутинская ТЭЦ-1».
Программный продукт должен реализовывать:
- просмотр базы данных
- добавление новых данных в базу
- редактирование базы данных
- удаление данных из базы
- Сортировка в таблице «Платежи» по полям:
Тип платежей
Год
Квартал
Общие платежи
- Поиск в
таблице «Показатели» по полям:
Вид загрязнений
Выплаты по плану
Выплаты по факту
Выплаты в бюджет
таблице «Вещества» по полям:
Название вещества
Плата за тонну
Повышающий коэффициент
Объем загрязнений
Платежи
- Фильтрацию с ограничениями данных по:
Выплатам по плану
Выплатам по факту
Выплатам в бюджет
Плате за тонну
Повышающему коэффициент
Объему загрязнений
Платежам
- Реализацию режима Запрос - Ответ.
- Парольную защиту на просмотр и редактирование базы данных.
- Построение диаграмм для демонстрации результатов расчетов в графическом виде.
Входной информацией являются данные о показателях загрязнения, загрязняющих веществах и нормативах.
Выходными данными являются:
- результатные таблицы
- результаты поиска
- результаты фильтрации
- результаты запроса
- диаграммы
- отчеты по годовым и квартальным платежам
3. Использованные инструменты Delphi:
- Database Desktop позволяет создавать, просматривать, модифицировать таблицы форматов Paradox 7 и другие.
- Database Explore позволяет просматривать иерархическую структуру баз данных с возможностью редактирования данных.
- Object TreeView отображает иерархическую структуру, включающую все объекты текущей формы. Служит для быстрого переключения между объектами формы.
- Inspector Object для изменения свойств визуализации и невидимых объектов, а также для создания и редактирования событий.
- Project Manager инструмент для управления объектами, позволяющими включать/выключать формы и модули в или из проекта.
- To do List служит для краткого описания последовательности алгоритмов.
- Rave Designer -утилита, поставляемая вметсе с Delphi версии 7. С ее помощью можно легко создавать шаблоны отчетов, которые затем будут использоваться в программе.
4. Описание базы данных:
База данных состоит из 4х связанных между собой таблиц:
Таблица Limit (содержит информацию об общих, квартальных и годовых платежах):
ID (идентификационный номер отчета).