Мегаобучалка Главная | О нас | Обратная связь  


Выбор средств реализации




Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

 

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

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

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



Однако помимо технических средств и СУБД необходимо осуществить взаимодействие между ними и пользователем. Этот интерфейс должен быть интуитивно понятен и максимально эргономичен, т.е. предоставить пользователю возможность легкой и быстрой модификации данных, выборки данных по запросу, представление данных в определенной форме. Проектирование интерфейса выполняется при помощи современных систем программирования.

В данной курсовой работе в качестве СУБД выступает сервер баз данных Firebird. Firebird является клоном такого известного продукта фирмы Borland, как Interbase. InterBase – сервер баз данных, имеющий 20-летнюю историю (создан в 1985 году). Инновации, предложенные в этом сервере, не только остаются актуальными до сих пор, но и начинают широко внедряться в альтернативных СУБД. Основной особенностью функциональности InterBase является версионность.

Механизм версионности кроме InterBase практически нигде не использовался, и потихоньку начал внедряться в коммерческих серверах не более 10 лет назад. На текущий момент в той или иной степени версионный механизм поддерживают кроме InterBase и Firebird: Oracle, PostgreSQL, а также MS SQL 2005. В 2000 году компания Borland в силу специфических причин выпустила InterBase 6.0 в OpenSource. Когда исходные коды InterBase были опубликованы, группа пользователей скопировала исходные тексты и начала новый проект под названием Firebird. Далее, с версии InterBase 6.5 Borland вернулся к схеме платного сервера с закрытыми исходными текстами, а Firebird продолжил существование как бесплатный для частного и коммерческого использования сервер с открытыми исходными текстами.

Несмотря на расхождения между последними версиями InterBase и Firebird, они оба наследуют все те положительные черты исходной СУБД InterBase, которые обеспечили высокую популярность этого сервера. Более того, здоровая конкуренция между этими серверами по возможностям SQL, производительности и другим параметрам гарантируют пользователям той или иной СУБД интенсивное развитие выбранного ими сервера. Небольшой объем дистрибутива, простой и быстрый процесс установки с моментальной готовностью к работе, минимальные требования к оборудованию, широкий спектр компонент и драйверов для разнообразных сред разработки, возможность обслуживания больших баз данных и большого числа пользователей, а также архитектура многоверсионности, упрощающая логику приложений – все это востребовано как начинающими, так и опытными разработчиками.

 

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

 

Приложение призвано обеспечить интерфейс пользователя и СУБД и должно удовлетворять следующим требованиям:

· содержательное название.

· ясные и понятные инструкции.

· логическая обоснованность группировки и последовательности полей.

· легко узнаваемые названия полей.

· согласованная терминология и сокращения.

· согласованное использование цветов.

· визуальное выделение пространств и границ полей ввода данных.

· удобные средства перемещения курсора.

· средства исправления отдельных ошибочных символов и целых полей.

· средства вывода сообщений об ошибках при вводе недопустимых значений.

· особое выделение необязательных для ввода полей.

· средства вывода пояснительных сообщений с описанием полей.

· средства вывода сообщения об окончании заполнения формы.

Для доступа к базе данных и реализации интерфейса пользователя использовалась среда программирования Delphi.

В основе любого приложения баз данных лежат наборы данных, которые представляют собой группы записей (их удобно представить в виде таблиц в памяти), переданных из базы данных в приложение для просмотра и редактирования. Каждый набор данных инкапсулирован в специальном компоненте доступа к данным. В Delphi реализован набор базовых классов, поддерживающих функциональность наборов данных, и практически идентичные по составу наборы дочерних компонентов для технологий доступа к данным. Их общий предок – класс TDataSet.

Для обеспечения связи набора данных с визуальными компонентами отображения данных используется специальный компонент DataSource. Его роль заключается в управлении потоками данных между набором данных и связанными с ним компонентами отображения данных. Этот компонент обеспечивает передачу данных в визуальные компоненты и возврат результатов редактирования в набор данных, отвечает за изменение состояния визуальных компонентов при изменении состояния набора данных, передает сигналы управления от пользователя (визуальных компонентов) в набор данных. Компонент DataSource расположен на странице Data Access палитры компонентов. С каждым компонентом доступа к данным может быть связан как минимум один компонент DataSource. В его обязанности входит соединение набора данных с визуальными компонентами отображения данных. Компонент DataSource обеспечивает передачу в эти компоненты текущих значений полей из набора данных и возврат в него сделанных изменений.

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

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

Пользователь при помощи компонентов отображения данных может просматривать и редактировать данные. Измененные значения сразу же передаются из элемента управления в набор данных при помощи компонента DataSource. Затем изменения могут быть переданы в базу данных или отменены.

 

Реализация проекта

 

На следующем рисунке приведена главная форма приложения:

 


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

Все невизуальные компоненты: IBDatabase, IBTransaction, IBDataset, DataSource вынесены в специальный контейнер DataModule:

 

 

Для выборки данных, их изменения, удаления и вставки в TIBDataSet используется набор свойств, представляющих собой SQL-запросы для манипулирования данными, – это SelectSQL, DeleteSQL, InsertSQL и ModifySQL.

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

В свойстве SelectSQL указывается запрос на выборку данных (SELECT… FROM…), которые будут доступны для просмотра и, в зависимости от содержимого остальных запросов, для редактирования, удаления и т.д.

В свойствах DeleteSQL, InsertSQL и ModifySQL указываются соответствующие запросы, которые будут вызываться автоматически самим компонентом при вызове методов Delete, Insert и Edit для удаления, вставки и редактирования записей.

Фактически все, что нужно сделать программисту, – это написать нужные запросы, выполняющие нужные операции над записями.

При помощи IBDatabase приложение подключается к базе данных с использованием учетной записи администратора: SYSDBA.

На следующем рисунке приведен вид окна установки параметров подключения:

 

 

Компоненты IBDataSetGroups и IBDataSetUP, а также IBDataSetUP и IBDataSetZan находятся с отношении главный-подчиненный (master-detail). Этот режим обеспечивает отбор записей подчиненной таблицы в зависимости от значения ключевого поля текущей записи главной таблицы.

На следующем рисунке представлено окно редактирования текста запроса на выборку компонента IBDataSetUP. Для реализации master-detail используется свойство IBDataSetUP. DataSource:= DataSourceGroups и условие отбора по значению текущей группы:

 


 

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

При добавлении или изменении текущей записи открывается форма с компонентами редактирования. При этом в первом случае соответствующий набор данных переводится в режим Insert, во втором – в режим Edit.

 

 


 

 

 


На формах расположены компоненты редактирования полей текущей записи, т.н. db-aware компоненты. Все они связаны с соответствующими наборами данных, расположенными на главной форме приложения. Внесение изменений при помощи этих компонентов автоматически переводит набор данных в состояние Edit. При добавлении новой записи необходимо перевести набор данных в состояние Insert, вызвав соответствующий метод.

 




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



©2015-2020 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (99)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.013 сек.)
Поможем в написании
> Курсовые, контрольные, дипломные и другие работы со скидкой до 25%
3 569 лучших специалисов, готовы оказать помощь 24/7