Проектирование и разработка базы данных автоматизированной информационной системы предприятия "Паспорт здоровья"
Характеристика информационных потоков. Проведение исследования информационно-логической модели предметной области. Физическое проектирование базы данных. Создание связей между таблицами. Разработка клиентского приложения в среде MS Visual Studio.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 06.06.2021 |
Размер файла | 1,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Аннотация
Пояснительная записка содержит 40 страниц, в том числе 23 рисунка, 12 таблиц, 12 источников и 1 приложение.
В данной курсовой работе произведены исследования возможностей по разработке базы данных на основе SQL Server 2014 и клиент-серверного приложения, созданного в Visual Studio 2017 на языке программирования высокого уровня C#.
Система SQL Server 2014 отталкивается от концепции платформы данных Майкрософт, она упрощает управление любыми данными в любой момент времени. Она позволяет хранить в базах данных информацию, полученную из структурированных и неструктурированных источников.
В SQL Server 2014 имеется большой набор интегрированных служб, расширяющих возможности использования данных, а именно: составлять запросы, выполнять поиск, проводить синхронизацию, делать отчеты, анализировать данные.
Система SQL Server 2014 позволяет обращаться к данным из любого приложения, разработанного с применением технологий Microsoft DOT.NET и Visual Studio.
Содержание
Введение
1. Анализ данных предметной области
1.1 Анализ информационных потоков
1.2 Диаграммы IDEF0, DFD
1.3 Построение диаграмм IDEF0, DFD
1.4 Информационно-логическая модель предметной области
1.5 Даталогическая модель предметной области
2. Физическое проектирование базы данных
3. Создание базы данных
3.1 Создание таблиц базы данных
3.2 Создание связей между таблицами
4. Общие сведения о технологии ADO.NET
4.1 Соединение с источником данных
4.1.1 Объектная модель ADO.NET
4.1.2 Отсоединенные объекты ADO.NET
4.1.3 Подсоединенные объекты модели ADO.NET
5. Разработка клиентского приложения в среде MS Visual Studio
5.1 Решения и проекты
5.2 Подключение к базе данных
6. Руководство по эксплуатации программного средства
Заключение
Список использованных источников
Приложения
Введение
Целью данной курсовой работы является разработка и создание базы данных предметной области «Паспорт здоровья» в СУБД SQL Server 2014 по новым информационным технологиям на платформе Visual Studio 2017 с использованием языка программирования высокого уровня C#.
Для достижения поставленной цели необходимо выполнить инженерные задачи анализа данных предметной области и разработать:
1) информационно-логическую модель предметной области по нотациям Ричарда Баркера;
2) даталогическую модель реляционной БД, нормализованную до НФБК в СУБД MySQL в виде диаграммы отношений;
3) приложение интерфейса для SQL-сервера базы данных на языке программирования C# в программной среде Visual Studio 2017;
4) инструкцию по администрированию и пользованию БД.
1. Анализ данных предметной области
Организация придает большое значение здоровью сотрудников и имеет в своей структуре подразделение, занимающееся профилактикой здоровья сотрудников. Для учета состояния здоровья для каждого сотрудника ведется
«Паспорт здоровья», в котором сохраняется следующая информация:
- ФИО сотрудника, пол, дата рождения;
- образование (высшее, среднее, без образования). Если человек за время работы на предприятии повышал своё образование - необходимо фиксировать все соответствующие данные, привязывая их к дате получения соответствующего документа;
- история всех перемещений сотрудника на предприятии - подразделение, должность, категория должности (инженерно-технический работник, рабочий, управленческий персонал, IT-специалист и др.), должность, ставка, дата начала работы, дата окончания;
- история семейного положения - состояние (холост, в браке, разведен и др.), дата начала семейной жизни, дата окончания;
- история антропологических измерений - на дату - рост, вес;
- история прививок - дата, название прививки;
- история заболеваний - название, дата постановки на учет, дата снятия с учета.
1.1 Анализ информационных потоков
На предприятии имеется несколько подразделений для выполнения основной задачи. Все подразделения находятся под управлением руководителя предприятием.
Для получения сотрудником паспорта здоровья ему необходимо пройти медицинский осмотр. Директор организации посылает устное (письменное) распоряжение руководителю подразделения о прохождении медицинского осмотра. Руководитель подразделения составляет и отсылает подразделению профилактики здоровья график прохождения медицинского осмотра. Подразделение передаёт этот график сотрудникам организации, а сотрудники подразделения, в свою очередь, получают график работы. Сотрудники организации передают свои персональные данные в подразделение профилактики здоровья. После проведения медицинского осмотра сотрудники подразделения передают результаты в подразделение профилактики здоровья. В подразделении составляется отчёт, который направляется к руководителю подразделения, а от него к директору организации. информационный база данный приложение
Исходя из анализа данных предметной области, уяснения процесса передачи и обработки информации между структурными подразделениями организации разрабатывается схема информационных потоков, представленная на рисунке 1.
Рисунок 1 - Схема информационных потоков
В данной предметной области имеются потоки, которые подлежат автоматизации. Такими потоками являются:
- данные о сотруднике;
- результаты медицинского осмотра сотрудников;
- отчёт о проведённом медицинском осмотре.
1.2 Диаграммы IDEF0, DFD
Контекстная диаграмма моделирует систему наиболее общим образом. Контекстная диаграмма отражает интерфейс системы с внешним миром, а именно, информационные потоки между системой и внешними сущностями, с которыми она должна быть связана. Она идентифицирует эти внешние сущности, а также, как правило, единственный процесс, отражающий главную цель или природу системы насколько это возможно. Диаграмма нулевого уровня строится как декомпозиция процесса, который присутствует на контекстной диаграмме.
Построенная диаграмма нулевого уровня также имеет множество процессов, которые в свою очередь могут быть декомпозированы в диаграммы нижнего уровня. Таким образом, строится иерархия диаграмм с контекстной диаграммой в корне дерева. Этот процесс декомпозиции продолжается до тех пор, пока процессы могут быть эффективно описаны с помощью коротких (до одной страницы) мини-спецификаций обработки (спецификаций процессов). низкого уровня необходимо соотнести с процессом верхнего уровня.
IDEF0 - методология функционального моделирования и графическая нотация. Отличительной особенностью IDEF0 является её акцент на соподчиненность объектов. В IDEF0 рассматриваются логические отношения между работами, а не их временная последовательность.
Стандарт IDEF0 представляет совокупность правил, методов и процедур, предназначенных для построения функциональной модели, являющейся иерархически связанным структурным представлением действия некоторого объекта, а также вещественных и информационных объектов, необходимых для функционирования или являющихся результатом этого функционирования.
1.3 Построение диаграмм IDEF0, DFD
Для построения диаграммы нотации IDEF0 были выбраны информационные потоки, подлежащие автоматизации, на основе анализа предметной области.
Для построения диаграмм используется инструментальное средство - Ramus Educational.
Диаграмма нотации IDEF0 системы представлена на рисунке 2.
Рисунок 2 - Диаграмма методологии IDEF0
Следующим шагом является построение диаграммы первого уровня, более подробно иллюстрирующий процессы, протекающие в системе.
Диаграмма первого уровня представлена на рисунке 3.
Рисунок 3 - Диаграмма первого уровня декомпозиции
Для описания декомпозиции блоков: «Регистрация», «Первичное обследование, выдача амбулаторного листа», «Полное обследование сотрудника», «Формирование отчётов» и показа циркуляции данных внутри системы и взаимодействия с внешними сущностями будет использоваться диаграмма с методологией DFD «As is» («как есть»), представленные на рисунках 4.
Рисунок 4 - Диаграмма методологии DFD
1.4 Информационно-логическая модель предметной области
Исходными данными для построения информационно-логической модели предметной области (ИЛМ) являются результаты анализа предметной области, представленные в виде описания классов объектов и связей между ними. Чаще всего ИЛМ предметной области представляют в терминах семантической модели данных, в виде ER-диаграммы предметной области.
В настоящее время существуют разнообразные нотации построения ER- модели. Подробно рассмотрим самую распространенную из них - методологию Ричарда Баркера.
Методология Ричарда Баркера построена на базе следующих элементов: класс объектов, свойство класса объектов, уникальные идентификаторы, опциональность свойств, мощность (тип), опциональность и переносимость связей, уникальность объектов из связей, супер-типы, подтипы, арки.
В методологии используются следующие соглашения:
- класс объектов отображается в виде четырехугольника с закругленными углами, а имя класса объектов указывается внутри четырехугольника, это имя существительное в единственном числе, отображенное заглавными буквами;
- свойства записываются внутри четырехугольника, отображающего класс объектов строчными буквами, это имя существительное в единственном числе;
- четырехугольник, отображающий класс объектов, можно увеличивать до любых размеров, четырехугольники могут быть разных размеров;
- опциональность свойств помечается: обязательное свойство - звездочкой (*), необязательное - кружочком (о);
- уникальный идентификатор помечается #, если уникальных идентификаторов несколько, тогда каждый помечается номером, указанным в скобках, например, # (1), # (2);
- обязательная связь помечается сплошной линией, необязательная связь пунктирной линией;
- тип (мощность) связи “один” помечается линией, “много” - “вороньей лапой”.
Каждый объект обладает определенным набором свойств. Для объектов одного класса набор этих свойств одинаков, а эти значения могут различаться.
При описании предметной области необходимо отразить связь между объектами разных классов. Различают связи типа “один к одному” (1:1), “один ко многим” (1:М), “многие ко многим” (М:М).
Концептуальная инфологическая модель предметной области, построенная по методологии Ричарда Баркера.
1.5 Даталогическая модель предметной области
Под даталогической понимается модель, отражающая логические взаимосвязи между элементами данных безотносительно их содержания и физической организации. При этом даталогическая модель разрабатывается с учетом конкретной реализации СУБД, также с учетом специфики конкретной предметной области на основе ее инфологической модели.
Переход к даталогической модели сводится к изменению тех отношений между сущностями, которые существуют только на логическом уровне. Могут добавляться новые дополнительные ограничения, внешние ключи для связи между таблицами.
2. Физическое проектирование базы данных
После этапа логического проектирования можно перейти к физическому проектированию таблиц. Описания таблиц приведены ниже.
Таблица 1 - Реляционная таблица «info_po_sotr»
Таблица 2 - Реляционная таблица «vid_obrazovaniya»
Таблица 3 - Реляционная таблица «antr_izmeneniya»
Таблица 4 - Реляционная таблица «semeinoe_polozh»
Таблица 5 - Реляционная таблица «istoriya_zabolevaniy»
Таблица 6 - Реляционная таблица «pol »
Таблица 7 - Реляционная таблица «pasport_zdarovya »
Таблица 8 - Реляционная таблица «stavka»
Таблица 9 - Реляционная таблица «dolzhnost»
Таблица 10 - Реляционная таблица «povishenie_kvalif»
Таблица 11 - Реляционная таблица «istoriya_raboty»
Таблица 12 - Реляционная таблица «istoriya_privivok»
3. Создание базы данных
Рассмотрим технологию создания базы данных в MS SQL Server с использованием специальной утилиты, которая входит в стандартную поставку MS SQL Server - Management Studio. Если на персональном компьютере не установлена эта утилита, то ее необходимо установить из инсталляционного пакета MS SQL Server.
После запуска Management Studio и авторизации на сервере загрузится основное окно программного средства. В панели “Обозреватель решений” представлен список SQL-серверов, доступных из данной утилиты. Необходимо выбрать нужный SQL-сервер, кликнуть правой кнопкой мыши на пункт “Базы данных” и в появившемся контекстном меню выбрать команду “Создать базу данных” рисунок 7.
Рисунок 7 - Создание базы данных с помощью Management Studio
В появившемся окне в поле «Имя базы данных» указывается имя базы данных.
3.1 Создание таблиц базы данных
После того как база данных создана можно приступить к созданию таблиц. Таблицы будут создаваться на основе даталогической модели. Для этого необходимо в SQL Server Management Studio развернуть нашу базу данных и кликнув правой кнопкой мыши на «Таблицы» в контекстном меню выбрать «Создать» > «Таблица», рисунок 9.
Рисунок 9 - Создание таблицы
Далее указываются имя столбца, тип данных, значения NULL, NOT NULL (рисунок 10). На рисунке 10 указана таблица info_po_sotr, где id_sotr является первичным ключом. Так как он является идентификатором, для него указан автоинкремент в свойствах столбца. Аналогичным образом создаются остальные таблицы.
Рисунок 10 - Создание таблицы info_po_sotr
3.2 Создание связей между таблицами
В реляционной базе данных все таблицы взаимосвязаны между собой по первичным и внешним ключам. Связь между таблицами отображается на диаграмме. Разработка диаграммы делается следующим образом: выбирается поле, являющееся первичным ключом первой таблицы, и перетаскивается на поле другой таблицы, которое должно стать внешним ключом. В данном примере показано создание связи между таблицей vid_obrazovaniya и info_po_sotr. C помощью первичного ключа id. После перетаскивания указывается внешний ключ vid_obraz_fk в таблице info_po_sotr для связи «один ко многим» (рисунок 11).
Аналогичным образом создаются связи между всеми остальными таблицами базы данных.
4. Общие сведения о технологии ADO.NET
Технология ADO.NET (ActiveX Data Objects .NET), как составная и неотъемлемая часть Framework Class Library, является набором классов, реализующих программные интерфейсы для облегчения подключения к базам данных из приложения. Эта технология исключает зависимость разработчика от особенностей реализации конкретной системы управления базами данных и от структуры самой базы данных, а также от места расположения этой самой базы - в частности, в распределенной среде (клиент-серверное приложение) на стороне сервера.
ADO.NET широко используется совместно с технологией Web- программирования с применением объектов ASP.NET для доступа к расположенным на сервере базам данных со стороны клиента.
Решение даже самой простой задачи, связанной с данными, предполагает использование множества разнообразных объектов - представителей классов ADO.NET, которые находятся между собой в достаточно сложных взаимоотношениях.
ADO.NET для того и используется, чтобы максимально скрыть детали реализации конкретной базы и предоставить программисту набор стандартных классов, интерфейсов, программных средств, которые превращают процесс создания приложения в стандартизированный технологический процесс.
Работа с базой данных на уровне приложения .NET представляет собой работу:
- с множествами объявлений классов, которые содержат объявления унаследованных методов и свойств, предназначенных для решения задачи извлечения информации из базы данных;
- с множеством объектов-представителей классов, которые обеспечивают работу с базами данных;
- с множеством значений и свойств конкретных объектов, отражающих специфику структуры конкретной базы данных.
Начать рассмотрение технологии ADO.NET необходимо с описания подключения к источнику данных.
4.1 Соединение с источником данных
В приложениях, работающих с базами данных, до недавних пор применялся доступ к данным через постоянное соединение с источником данных. Приложение открывало соединение с базой данных и не закрывало его по крайней мере до завершения работы с источником данных. В это время соединение с источником поддерживалось постоянно.
Недостатки такого подхода стали выявляться после появления приложений, ориентированных на Интернет.
Соединения с базой данных требуют выделения системных ресурсов, и если база данных располагается на сервере, то при большом количестве клиентов это может быть критично для сервера. Хотя постоянное соединение и позволяет немного ускорить работу приложения, общий убыток от растраты
системных ресурсов преимущество в скорости выполнения приложения сводит на нет.
Факт плохого масштабирования приложений с постоянным соединением известен давно. Соединение с парой клиентов обслуживается приложением хорошо, 10 клиентов обслуживаются хуже, 100 - много хуже.
В ADO.NET используется другая модель доступа - доступ к отсоединенным данным. При этом соединение устанавливается лишь на то время, которое необходимо для проведения определенной операции над базой данных.
Модель доступа - модель компромиссная. В ряде случаев она проигрывает по производительности традиционной модели, и для этих случаев рекомендуется вместо ADO.NET использовать ADO.
ADO.NET как часть Framework Class Library представляет собой иерархию классов, поэтому чтобы понять, как работать с ADO.NET нужно изучить его объектную модель.
4.1.1 Объектная модель ADO.NET
Объектная модель ADO.NET реализует отсоединенный доступ к данным. При этом в Visual Studio существует множество встроенных мастеров и дизайнеров, которые позволяют реализовать механизмы доступа к базе данных еще на этапе разработки программного кода.
С другой стороны, задача получения доступа к данным может быть решена непосредственно во время выполнения приложения.
Концепция доступа к данным в ADO.NET основана на использовании двух компонентов:
- набора данных (представляется объектом класса DataSet) со стороны клиента. Это локальное временное хранилище данных;
- провайдера данных (представляется объектом класса DataProvider). Это посредник, обеспечивающий взаимодействие приложения и базы данных со стороны базы данных (в распределенных приложениях - со стороны сервера).
Концепция доступа к данным в ADO.NET представлена на рисунке 13.
Рисунок 13 - Концепция доступа к данным в ADO.NET
Объектная модель ADO.NET предполагает существование (при написании приложения для работы с базой данных - использование) двух множеств классов, выполняющих четко определенные задачи при работе с базой данных. Множества классов ADO.NET представлено на рисунке 14.
Рисунок 14 - Множества классов ADO.NET
Классы подсоединенных объектов обеспечивают установление соединения с базой данных и управление базой со стороны приложения; классы отсоединенных объектов обеспечивают сохранение, использование и преобразование полученной от базы данных информации на стороне приложения.
Далее подробнее рассматриваются классы отсоединенных объектов объектной модели ADO .NET. При этом классы отсоединенных объектов могут быть самостоятельно использованы в приложении наряду с обычными компонентами и элементами управления, даже если в приложении и не предполагается организовывать работу с базами данных.
4.1.2 Отсоединенные объекты ADO.NET
Каждый объект DataTable представляет одну таблицу базы данных. Таблица в каждый конкретный момент своего существования характеризуется:
- схемой таблицы,
- содержимым таблицы (информацией).
При этом схема таблицы (структура объекта DataTable) определяется двумя наборами:
- множеством столбцов таблицы (набор DataColumns, состоящий из множества объектов DataColumn);
- множеством ограничений таблицы (набор Constraints, состоящий из множества объектов Constraint).
DataColumnCollection задает схему таблицы, определяя тип данных каждой колонки.
В классе DataTable объявлено get-свойство DataColumns, с помощью которого может быть получена коллекция принадлежащих таблице столбцов.
Возвращается коллекция объектов - представителей класса DataColumn таблицы. Если у объекта-таблицы нет столбцов, возвращается null.
Объекты - представители класса DataColumn образуют набор DataColumns, который является обязательным элементом каждого объекта - представителя класса DataTable.
Эти объекты соответствуют столбцам таблицы, представленной объектом - представителем класса DataTable.
Объект DataColumn представляет тип колонки в DataTable. Это стандартный блок, предназначенный для построения схемы DataTable.
Каждый объект DataColumn как элемент схемы характеризуется собственным типом, определяющим тип значений, которые DataColumn содержит.
Если объект DataTable создается как отсоединенное хранилище информации, представляющее таблицу базы данных, тип столбца объекта- таблицы должен соответствовать типу столбца таблицы в базе данных.
Содержимое таблицы (непосредственно данные) задается набором DataRows - это конкретное множество строчек таблицы, каждая из которых является объектом - представителем класса DataRow.
Элементы этого набора являются объектами класса DataRow. В этом классе обеспечивается несколько вариантов реализации свойства Item, которые обеспечивают навигацию по множеству записей объекта DataTable и сохранение текущих изменений данных, сделанных за текущий сеанс редактирования базы.
Посредством набора Rows реализуется возможность ссылки на любую запись таблицы. К любой записи можно обратиться напрямую, и поэтому не нужны методы позиционирования и перемещения по записям таблицы.
Основной контроль за изменениями данных в таблице возлагается на строки - объекты класса DataRow.
В рамках отсоединенной модели ADO.NET объект DataSet становится важным элементом технологии отсоединенного доступа. Объект- представитель DataSet представляет множество таблиц.
Для успешного решения задачи представления в DataSet'е есть все необходимое. Его функциональные возможности позволяют загрузить в локальное хранилище на стороне приложения данные из любого допустимого для ADO.NET источника: MySQL, SQL Server, Microsoft Access, XML-файл.
В числе данных - членов этого класса имеется набор Tables. Объект DataSet может содержать таблицы, количество которых ограничивается лишь возможностями набора Tables.
Для каждой таблицы - элемента набора Tables может быть (и, естественно, должна быть) определена структура таблицы. В случае, когда приложение взаимодействует с реальной базой данных, структура таблиц в DataSet'е должна соответствовать структуре таблиц в базе данных. DataSet - это находящийся в памяти объект ADO.NET, используемый в приложении для представления данных; он определяет согласованную реляционную модель базы данных, которая не зависит от источника содержащихся в нем данных.
Степень полноты модели определяется задачами, которые решает приложение.
Объект DataSet может представлять абсолютно точную модель базы данных, и в таком случае эта модель должна будет включать полный набор структурных элементов базы данных, включая таблицы, содержащие данные, с учетом установленных ограничений и отношений между таблицами.
Содержащуюся в объекте DataSet информацию можно изменять независимо от источника данных (от самой базы данных). Соответствующие значения формируются непосредственно в программе и добавляются в таблицы.
При работе с базой данных данные могут собираться из разных таблиц, локальное представление которых обеспечивается различными объектами - представителями классов DataSet. В классе DataSet определено множество перегруженных методов Merge, которые позволяют объединять содержимое нескольких объектов DataSet.
Любой объект-представитель класса DataSet позволяет организовать чтение и запись содержимого (теоретически - информации из базы) в файл или область памяти. При этом можно читать и сохранять:
- только содержимое объекта (собственно информацию из базы);
- только структуру объекта - представителя класса DataSet;
- полный образ DataSet (содержимое и структуру).
Таким образом, DataSet является основой для построения различных вариантов отсоединенных объектов - хранилищ информации.
На DataSet работают все ранее перечисленные компоненты ADO.NET.
В свою очередь, в приложении, обеспечивающем взаимодействие с базой данных, объект DataSet функционирует исключительно за счет объекта DataAdapter, который обслуживает DataSet.
При этом DataAdapter является центральным компонентом архитектуры отсоединенного доступа.
База данных характеризуется множеством таблиц и множеством отношений между таблицами.
DataSet (как объявление класса) включает:
- набор (возможно, что пустой) объявлений классов DataTable (фактически это описание структуры составляющих данный КЛАСС DataSet таблиц);
- набор объявлений классов DataRelations, который обеспечивает установку связей между разными таблицами в рамках данного DataSet.
Структура DataSet может в точности повторять структуру базы данных и содержать полный перечень таблиц и отношений, а может быть частичной копией базы данных и содержать, соответственно, лишь подмножество таблиц и подмножество отношений. Все определяется решаемой с помощью данного DataSet задачей.
При всем этом следует иметь в виду, что DataSet, структура которого полностью соответствует структуре базы данных никогда не помешает решению поставленной задачи. Даже если будет содержать излишнюю информацию.
Объект - представитель данного класса DataSet обеспечивает представление в памяти компьютера фрагмента данной базы данных. Этот объект является локальным представлением (фрагмента) базы данных.
4.1.3 Подсоединенные объекты модели ADO.NET
Поставщик данных для приложения (Провайдер) - объект, предназначенный для обеспечения взаимодействия приложения с хранилищем информации (базами данных).
Источник данных (Data Provider) - это набор взаимосвязанных компонентов, обеспечивающих доступ к данным. Функциональность и само существование провайдера обеспечивается набором классов, специально для этой цели разработанных.
ADO.NET поддерживает четыре типа источников данных, соответственно, два множества классов:
- поставщик данных Connector/NET 8.0.18 для MySQL 8.0;
- поставщик данных NET Framework для Microsoft® SQL Server™ 7.0 и более поздних версий;
- поставщик данных NET Framework для источников данных, доступных средствами OLE DB;
- поставщик данных .NET Framework для источников данных, доступных средствами ODBC;
Объект - представитель класса Connection представляет соединение с источником (базой) данных и обеспечивает подключение к базе данных.
Компонента Connection (независимо от того, представителем какого класса она является) имеет свойство ConnectionString, в котором фиксируется вся необходимая для установления соединения с базой данных информация. Кроме того, поддерживается ряд методов, позволяющих обрабатывать данные с применением транзакций.
Свойства объекта Connection позволяют:
- задавать реквизиты пользователя;
- указывать расположение источника данных.
Методы объекта позволяют управлять соединением с источником данных.
Формирование строки и последовательность действий при инициализации объекта соединения - дело техники. Главное - это чтобы свойство ConnectionString в результате получило бы ссылку на строку символов, содержащую необходимую для установления соединения информацию.
Команда - объект, представляющий один из двух классов: либо класс OleDbCommand, либо класс MySqlCommand. Основное назначение объекта
«Команда» - выполнение различных действий над Базой Данных (источнике данных) при использовании открытого соединения. Сами же действия обычно кодируются оператором SQL или хранимой процедурой. Закодированная информация фиксируется с использованием объектов - представителей класса Parameter, специально разработанных для «записи» кодируемой в команде информации.
То есть после установления соединения с базой данных для изменения состояния этой базы может быть создан, соответствующим образом настроен и применен объект - представитель класса Command.
Объект «Команда» - стартовый стол для запуска непосредственно из приложения команд управления базой данных, которыми и осуществляется непосредственное управление базой данных. Команда в приложении обеспечивает взаимодействие приложения с базой данных, позволяя при этом:
- сохранять параметры команд, которые используются для управления базой данных;
- выполнять специфические команды базы данных INSERT, UPDATE, DELETE, которые не возвращают значений;
- выполнять команды, возвращающие единственное значение;
- выполнять команды специального языка определения баз данных DataBase Definition Language (DDL), например, CREATE TABLE;
- работать с объектом DataAdapter, возвращающим объект DataSet;
- работать с объектом DataReader;
- для класса MySqlCommand - работать с потоком XML;
- создавать результирующие наборы, построенные на основе нескольких таблиц или в результате исполнения нескольких операторов.
Объект Command обеспечивает управление источником данных, которое заключается:
- в выполнении DML (Data Manipulation Language) запросов - запросов, не возвращающих данные (INSERT, UPDATE, DELETE);
- в выполнении DDL (Data Definition Language) запросов - запросов, которые изменяют структуру Базы Данных (CREATE);
- в выполнении запросов, возвращающих данные через объект DataReader (SELECT).
Объект представлен двумя классами - MySqlCommand и OleDbCommand. Позволяет исполнять команды на базе данных и при этом использует установленное соединение. Исполняемые команды могут быть представлены:
- хранимыми процедурами;
- командами SQL;
- операторами, возвращающими целые таблицы.
Объект - представитель класса Command поддерживает два варианта (варианты методов определяются базовым классом) методов:
- ExecuteNonQuery - обеспечивает выполнение команд, не возвращающих данные, например, INSERT, UPDATE, DELETE;
- ExecuteScalar - исполняет запросы к базе данных, возвращающие единственное значение;
- ExecuteReader - возвращает результирующий набор через объект DataReader.
Доступ к данным в ADO.NET с помощью Data Provider'а осуществляется следующим образом:
Объект - представитель класса Connection устанавливает соединение между базой данных и приложением;
- Это соединение становится доступным объектам Command и DataAdapter;
- При этом объект Command позволяет исполнять команды непосредственно над базой данных;
- Если исполняемая команда возвращает несколько значений, Command открывает доступ к ним через объект DataReader;
- Результаты выполнения команды обрабатываются либо напрямую, с использованием кода приложения, либо через объект DataSet, который заполняется при помощи объекта DataAdapter;
- Для обновления базы данных применяют также объекты Command и DataAdapter.
Итак, в любом случае, независимо от выбранного поставщика данных, при работе с данными в ADO .NET используем:
- Connection Object - для установки соединения с базой данных;
- Dataset Object - для представления данных на стороне приложения;
- Command Object - для изменения состояния базы. Способы создания объекта Command:
- с использованием конструкторов и с последующей настройкой объекта (указание строки запроса и объекта Connection);
- вызов метода CreateCommand объекта Connection.
Данные из базы выбираются в результате выполнения объекта Command. В ADO.NET применяются параметризованные команды. Объект Parameter является средством модификации команд. Представляет свойства и методы, позволяющие определять типы данных и значения параметров.
Манипулирование данными, которое осуществляется в процессе выполнения команд, естественно, требует определенной информации, которая представляется в команде в виде параметров. При этом характер и содержание управляющей дополнительной информации зависит от конкретного состояния базы на момент выполнения приложения.
Это означает, что настройка команды должна быть проведена непосредственно в процессе выполнения приложения. Именно во время выполнения приложения определяются конкретные значения параметров, проводится соответствующая настройка команд и их выполнение.
В структуре команды предусмотрены так называемые «поля подстановки». Объект команды при выполнении приложения настраивается путем присвоения значения параметра полю подстановки. Эти самые поля подстановки реализованы в виде свойства Parameters объекта команды. В зависимости от типа провайдера каждый параметр представляется объектом одного из классов: OleDbParameter или MySqlParameter.
Необходимое количество параметров для выполнения той или иной команды зависит от конкретных обстоятельств: каждый параметр команды представляется собственным объектом-параметром. Кроме того, если команда представляется сохраняемой процедурой, то может потребоваться дополнительный объект-параметр.
Во время выполнения приложения объект команды предварительно настраивается путем присваивания свойству Parameters списка (вполне
возможно, состоящего из одного элемента) соответствующих значений параметров - объектов класса Parameters. При выполнении команды эти значения параметров считываются и либо непосредственно подставляются в шаблон оператора языка SQL, либо передаются в качестве параметров хранимой процедуре.
Параметр команды является объектом довольно сложной структуры, что объясняется широким диапазоном различных действий, которые могут быть осуществлены над базой данных.
DataAdapter - составная часть провайдера данных. То есть подсоединенная компонента объектной модели ADO.NET используется для заполнения объекта DataSet и модификации источника данных. Выполняет функции посредника при взаимодействии базы данных и объекта DataSet.
Обеспечивает связь между источником данных и объектом DataSet. С одной стороны, база данных, с другой - DataSet. Извлечение данных и заполнение объекта DataSet - назначение DataAdapter'а.
Функциональные возможности DataAdapter'а реализуются за счет:
- метода Fill, который изменяет данные в DataSet. При выполнении метода Fill объект DataAdapter заполняет DataTable или DataSet данными, полученными из базы данных. После обработки данных, загруженных в память, с помощью метода Update можно записать модифицированные записи в базу данных;
- метода Update, который позволяет изменять данные в источнике данных с целью достижения обратного соответствия данных в источнике данных по отношению к данным в DataSet.
Фактически, DataAdapter управляет обменом данных и обновлением содержимого источника данных.
DataAdapter представляет набор команд для подключения к базе данных и модификации данных.
Три способа создания DataAdapter:
- с помощью окна Server Explorer;
- с помощью мастера Data Adapter Configuration Wizard;
- ручное объявление и настройка в коде.
Достойны особого внимания четыре свойства этого класса, фактически представляющие команды базы данных. Через эти команды объект DataAdapter и воздействует на DataSet и Базу:
- SelectCommand - содержит текст (строку sql) или объект команды, осуществляющей выборку данных из базы данных. При вызове метода Fill эта команда выполняется и заполняет объект DataTable или объект DataSet;
- InsertCommand - содержит текст (строку sql) или объект команды, осуществляющий вставку строк в таблицу;
- DeleteCommand - содержит текст (строку sql) или объект команды, осуществляющий удаление строки из таблицы;
UpdateCommand - содержит текст (строку sql) или объект команды, осуществляющий обновление значений в базе данных.
5. Разработка клиентского приложения в среде MS Visual Studio
5.1 Решения и проекты
В MS Visual Studio проекты служат контейнерами, где хранятся все конфигурационные параметры и параметры сборочного процесса, требуемые для создания .NET-сборки. У имен файлов проектов расширение либо .csproj, либо .vbproj в зависимости от языка проекта. Существует много разных типов проектов, их можно разделить на две большие категории:
- Web-проекты. Такой проект создается с адресом, поддерживаемым Hypertext Transfer Protocol (HTTP), например, http://localhost/MyWebProject. К Web-проектам относятся Web-приложения ASP.NET, предоставляющие контент Web-браузерам, а также Web-сервисы ASP.NET, применяемые в основном для интеграции данных через Интернет;
- Проекты, не связанные с Web (локальные). Эти проекты создаются в файловой системе (например, C:\Projects\MySystem\MySolution\MyWinProject). К наиболее распространенным типам локальных проектов относятся Windows-приложения и библиотеки классов, хотя существует и множество других типов, в том числе проекты служб, консольных приложений, баз данных и т. д.
Файлы решений (с расширением .sln) объединяют в группу связанные проекты и применяются в основном для управления процессом сборки. С их помощью можно управлять зависимостями и порядком, в котором собираются содержащиеся в них проекты.
Проект может быть частью одного или нескольких решений, но решения не могут включать другие решения.
Файл решения также содержит информацию о зависимостях проекта, используемую процессом сборки.
Далее приведены основные типы файлов, автоматически добавляемые к VSS (Visual SourceSafe - файл-серверная система управления версиями) при добавлении решения к системе контроля исходного кода с помощью Visual Studio IDE:
- файлы решений (*.sln). К основным элементам в этих файлах относятся список проектов, информация о зависимостях, параметры процесса сборки и настройки системы контроля исходного кода;
- файлы проектов (*.csproj или *.vbproj). К основным элементам в этих файлах относятся параметры компиляции, сборки, на которые есть ссылки (по имени и пути), а также описание файла (file inventory);
- конфигурационные файлы приложения. Основаны на XML (Extensible Markup Language) и применяются для управления свойствами проекта в период выполнения;
конфигурационный файл с контролем исходного кода для Web- приложений называется Web.config, а для приложений остальных типов - app.config и хранится в каталоге проекта. В период выполнения система сборки в Visual Studio .NET копирует App.config в папку Bin и переименовывает этот файл в Yourappname.exe.config;
- конфигурационный файл для приложений, отличных от Web, не добавляется к новому проекту автоматически. Если нужен такой файл, необходимо добавить его вручную. Убедитесь, что он называется App.config и находится в каталоге проекта;
- файлы исходного кода (*.cs, *.vb, *.aspx, *.asax, *.resx, *.vsdisco, *.css).
Все файлы исходного кода проекта включаются в систему контроля кода;
- файлы, не включаемые в систему контроля исходного кода;
- следующие файлы не включаются в систему контроля исходного кода, так как они специфичны для каждого разработчика;
- файлы пользовательских параметров проекта (*.csproj.user или
*.vbproj.user). Содержат специфические параметры проекта для разработчика, а также дополнительный (необязательный) путь поиска сборок, на которые есть ссылки в проекте.
Разрабатываемое в рамках курсового проектирования клиентское приложение будет представлять собой одно решение, в состав которого будет входить один проект.
5.2 Подключение к базе данных
Для того чтобы подключить базу данных, которая была создана в Microsoft Sql Server Management Studio, необходимо в обозревателе серверов подключиться к базе данных в среде разработки MS Visual Studio
6. Руководство по эксплуатации программного средства
Загрузка программной системы для работы с базой данных производится при запуске файла «KursovayaDB.exe».
После запуска появится главное окно программы. В главном меню поля с кнопками: «Личные данные», «Медицинские данные», «Рабочие данные» и «Запросы».
Перед заполнением таблицы «Информация о сотрудниках» необходимо заполнить талицы, фиксирующие её: «Вид образования», «Пол»,
«Должность». А затем можно переходить к заполнению оставшихся таблиц данных.
Заполнив поля в левой части формы, их можно добавить в таблицу. Для этого необходимо нажать на кнопку «Добавить». Данные в других таблицах добавляются аналогично.
Нажав на первый столбик нужной вам строки, данные можно редактировать. Отредактировав поля в левой части формы, их можно обновить в таблице. Для этого необходимо нажать на кнопку «Обновить». Данные в других таблицах обновляются аналогично.
Также, нажав на первый столбик нужной вам строки, данные можно удалить. Для этого необходимо нажать на кнопку «Удалить» (рисунок 20). Данные в других таблицах обновляются аналогично.
Помимо таблиц с данными в программе имеются запросы: «Запрос 1», «Запрос 2», «Запрос 3». Нажав на кнопки «1», «2», «3», соответственно, можно выполнить любой из них.
Заключение
В данной курсовой работе был включен краткий обзор клиент-серверной технологии баз данных, технологии ADO.NET, приведен процесс создания централизованной базы данных с помощью СУБД Microsoft SQL Server. Также детально рассмотрен процесс создания приложения, созданного при помощи среды разработки Microsoft Visual Studio, которая работает с базой данных, хранимой на сервере. Диаграммы IDEF0, DFD. По описанию предметной области была построена инфологическая модель, даталогическая модель и приведена пошаговая инструкция создания по ней базы данных.
В курсовой работе представлено физическое проектирование, диаграммы IDEF0, DFD, описание программного средства.
В курсовом проекте проанализирована предметная область и на этой основе были реализованы поставленные задачи
В приложении содержится листинг программы.
Список использованных источников
1. Советов, Б. Я. Базы данных: теория и практика: учеб. для бакалавров / Б. Я. Советов, В. В. Цехановский, В. Д. Чертовской.- 2-е изд. - М. : Юрайт, 2012. - 464 с.
2. Кузин, А. В. Базы данных: учеб. пособие / А. В. Кузин, С. В. Левонисова.- 2-е изд., стер. - М. : Академия, 2008. - 316 с.
3. Хомоненко, А. Д. Базы данных: учеб. для вузов / А. Д. Хомоненко, В. М. Цыганков, М. Г. Мальцев; под ред. А. Д. Хомоненко.- 6-е изд. - СПб. : КОРОНА-Век, 2010. - 736 с. : ил.
4. Фуфаев, Э. В. Разработка и эксплуатация удаленных баз данных: учеб. для сред. проф. образования / Э. В. Фуфаев, Д. Э. Фуфаев. - М. : Академия, 2008. - 251 с.
5. Пирогов, В.Ю. SQL Server 2005: Программирование клиент-серверных приложений/ В.Ю. Пирогов. - СПб.: БХВ-Петербург, 2006. - 336 с.: ил.
6. Советов, Б.Я. Базы данных: теория и практика: учеб. для втузов/ Б.Я. Советов, В.В. Цехановский, В.Д. Чертовской - 2-е изд., стер. - М.: Высш. шк., 2007. -463 с.: ил.
7. Кузин, А.В. Базы данных: учеб. пособие для студ. высш. учеб. заведений / А.В.Кузин, С.В. Левонисова. - М.: Издательский центр «Академия», 2005. - 320с.
8. Уткин, В.Б. Информационные системы в экономике: учебник для студ. высш. учеб. заведений / В.Б. Уткин, К.В. Балдин. - М.: Издательский центр «Академия», 2009, 2010. - 288 с.
9. Золотова, С.И. Практикум по Access/ С.И. Золотова - М.: Финансы и статистика, 2008. - 144с.: ил.
10. Вендров, А.М. Проектирование программного обеспечения экономических информационных систем: учебник/ А.М. Вендров - М.: Финансы и статистика, 2005.
11. Вендров, А.М. Практикум по проектированию программного обеспечения экономических информационных систем: учеб. пособие/ А.М. Вендров - М.: Финансы и статистика, 2006.
12. Щелков, С.А. Разработка и создание базы данных предметной области: методические указания к выполнению курсовой работы по дисциплине «Базы данных» Оренбургский гос. ун-т. - Оренбург: ОГУ, 2014. - 141 с.
Приложения
Листинг программы
Класс inf_sotr_polya.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace KursovayaDB.tables
{
class inf_sotr_polya
{
public int id_sotr { get; set; } public string familiya { get; set; } public string imya { get; set; } public string otchestvo { get; set; }
public DateTime data_rozhd { get; set; } public int? vid_obraz_fk { get; set; } public int? dolzhnost_fk { get; set; } public int? pol_fk { get; set; }
}
}
Класс inf_sotr_zapros.cs
using System;
using System.Collections.Generic; using System.Configuration;
using System.Data;
using System.Data.SqlClient; using System.Linq;
using System.Text;
using System.Threading.Tasks; using System.Windows.Forms; using KursovayaDB.tables;
namespace KursovayaDB.tables
{
class inf_sotr_zapros
{
static string myconstring = ConfigurationManager.ConnectionStrings["KursovayBD.Properties.Settings.DB_pasportConnection String"].ConnectionString;
#region Select Data public DataTable Select()
{ //Cоздание подключения БД
SqlConnection con = new SqlConnection(myconstring);
// Для хранения данных из базы данных
DataTable dt = new DataTable(); try
{
//написание Sql-запроса для получения всех данных из базы данных
String sql = "SELECT * FROM info_po_sotr";
//Для выполнения команды
SqlCommand cmd = new SqlCommand(sql, con);
//получение данных из базы данных
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
// Открываем соединение с БД
con.Open(); adapter.Fill(dt);
}
catch (Exception ex)
{// Сообщение если возникает ошибка
MessageBox.Show(ex.Message);
}
finally
{
//Закрываем соединение
con.Close();
}
//Возвращает значение в DataTable
return dt;
}
#endregion
#region Insert Data
public bool Insert(inf_sotr_polya inf_sotr_DB)
{
bool isSuccess = false;
SqlConnection con = new SqlConnection(myconstring);
try
{ //Сохдание SQL запроса
string sql = "INSERT INTO info_po_sotr (familiya, imya, otchestvo, data_rozhd, vid_obraz_fk, dolzhnost_fk, pol_fk) VALUES (@familiya, @imya, @otchestvo, @data_rozhd, @vid_obraz_fk, @dolzhnost_fk, @pol_fk)";
//Создание команды SQL для передачи значений в нашем запросе
SqlCommand cmd = new SqlCommand(sql, con);
//связка Передача значений через параметр cmd.Parameters.AddWithValue("@familiya", inf_sotr_DB.familiya); cmd.Parameters.AddWithValue("@imya", inf_sotr_DB.imya); cmd.Parameters.AddWithValue("@otchestvo", inf_sotr_DB.otchestvo); cmd.Parameters.AddWithValue("@data_rozhd", inf_sotr_DB.data_rozhd);
SqlParameter unitsParam = cmd.Parameters.AddWithValue("@vid_obraz_fk", inf_sotr_DB.vid_obraz_fk);
if (inf_sotr_DB.vid_obraz_fk == null)
{
unitsParam.Value = DBNull.Value;
}
SqlParameter unitsParam1 = cmd.Parameters.AddWithValue("@dolzhnost_fk", inf_sotr_DB.dolzhnost_fk);
if (inf_sotr_DB.dolzhnost_fk == null)
{
unitsParam1.Value = DBNull.Value;
}
SqlParameter unitsParam2 = cmd.Parameters.AddWithValue("@pol_fk", inf_sotr_DB.pol_fk);
if (inf_sotr_DB.pol_fk == null)
{
unitsParam2.Value = DBNull.Value;
}
con.Open();
//ExecuteNonQuery выполняет sql-выражение и возвращает количество измененных записей. Подходит для sql-выражений INSERT, UPDATE, DELETE.
//создание переменной int rows для выполнения запроса
int rows = cmd.ExecuteNonQuery();
//Если запрос выполнен успешно, то значение для строк будет больше 0, иначе оно будет меньше 0
if (rows > 0)
// Запрос выполнен успешно
isSuccess = true;
}
else
{
isSuccess = false;
//запрос не выполнен
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
return isSuccess;
}
#endregion
#region UPDATE Method
public bool Update(inf_sotr_polya inf_sotr_DB)
{
bool isSuccsses = false;
SqlConnection con = new SqlConnection(myconstring);
try
{
string sql = "UPDATE info_po_sotr SET familiya=@familiya, imya=@imya, otchestvo=@otchestvo, data_rozhd=@data_rozhd, vid_obraz_fk=@vid_obraz_fk, dolzhnost_fk=@dolzhnost_fk, pol_fk=@pol_fk WHERE id_sotr=@id_sotr";
SqlCommand cmd = new SqlCommand(sql, con);
cmd.Parameters.AddWithValue("@id_sotr", inf_sotr_DB.id_sotr); cmd.Parameters.AddWithValue("@familiya", inf_sotr_DB.familiya); cmd.Parameters.AddWithValue("@imya", inf_sotr_DB.imya); cmd.Parameters.AddWithValue("@otchestvo", inf_sotr_DB.otchestvo); cmd.Parameters.AddWithValue("@data_rozhd", inf_sotr_DB.data_rozhd);
SqlParameter unitsParam = cmd.Parameters.AddWithValue("@vid_obraz_fk", inf_sotr_DB.vid_obraz_fk);
if (inf_sotr_DB.vid_obraz_fk == null)
{
unitsParam.Value = DBNull.Value;
}
SqlParameter unitsParam1 = cmd.Parameters.AddWithValue("@dolzhnost_fk", inf_sotr_DB.dolzhnost_fk);
if (inf_sotr_DB.vid_obraz_fk == null)
{
unitsParam1.Value = DBNull.Value;
}
SqlParameter unitsParam2 = cmd.Parameters.AddWithValue("@pol_fk", inf_sotr_DB.pol_fk);
if (inf_sotr_DB.vid_obraz_fk == null)
{
unitsParam2.Value = DBNull.Value;
}
con.Open();
int rows = cmd.ExecuteNonQuery(); if (rows > 0)
{
// Успешный запрос
isSuccsses = true;
}
else
{
//Невыполненный isSuccsses = false;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
return isSuccsses;
}
#endregion
#region Delete Method
public bool Delete(inf_sotr_polya inf_sotr_DB)
{
bool isSuccsses = false;
SqlConnection con = new SqlConnection(myconstring);
try
{
string sql = "DELETE FROM info_po_sotr WHERE id_sotr=@id_sotr";
//Передача значения с помощью команды
SqlCommand cmd = new SqlCommand(sql, con); cmd.Parameters.AddWithValue("@id_sotr", inf_sotr_DB.id_sotr); con.Open();
int rows = cmd.ExecuteNonQuery(); if (rows > 0)
{
isSuccsses = true;
}
else
{
isSuccsses = false;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
return isSuccsses;
}
#endregion
}
}
Обработчик формы inf_sotr.cs
using System;
using System.Collections.Generic; using System.ComponentModel; using System.Data;
using System.Drawing; using System.Linq; using System.Text;
using System.Threading.Tasks; using System.Windows.Forms; using KursovayaDB.tables;
namespace KursovayaDB.forms
{
public partial class inf_sotr : Form
{
public inf_sotr()
{
InitializeComponent(); txtidsotr.Enabled = false;
}
inf_sotr_polya inf_sotr_Polya = new inf_sotr_polya(); inf_sotr_zapros inf_sotr_Zapros = new inf_sotr_zapros();
public void Clear()
{
txtidsotr.Text = ""; txtfamiliya.Text = ""; txtimya.Text = ""; txtotchestvo.Text = ""; dateTimePicker1.Text = ""; cmbvidobrazfk.Text = ""; cmbgenderfk.Text = ""; cmbdolzhfk.Text = "";
}
vid_obraz_zapros vid_Obraz_Zapros = new vid_obraz_zapros(); pol_zapros pol_Zapros = new pol_zapros();
dolzhnost_zapros dolzhnost_Zapros = new dolzhnost_zapros(); private void inf_sotr_Load(object sender, EventArgs e)
{
//Связь с таблицой "Вид образования" DataTable t1 = vid_Obraz_Zapros.Select(); cmbvidobrazfk.DataSource = t1; cmbvidobrazfk.DisplayMember = "id"; cmbvidobrazfk.ValueMember = "id";
//Связь с таблицой "Пол"
DataTable t7 = pol_Zapros.Select(); cmbgenderfk.DataSource = t7; cmbgenderfk.DisplayMember = "id"; cmbgenderfk.ValueMember = "id";
//Связь с таблицой "Должность"
DataTable t10 = dolzhnost_Zapros.Select(); cmbdolzhfk.DataSource = t10; cmbdolzhfk.DisplayMember = "id"; cmbdolzhfk.ValueMember = "id";
Clear();
//Вывод всей таблицы(Мероприятия),загрузка данных из БД в datagridview DataTable dt = inf_sotr_Zapros.Select();
dataGridView1.DataSource = dt; dataGridView1.ClearSelection();
}
private void btnAdd_Click(object sender, EventArgs e)
{
//получение значений для добавления из формы и обработка ошибок в случае если пользователь ввел неверный формат
try
{
inf_sotr_Polya.familiya = txtfamiliya.Text; inf_sotr_Polya.imya = txtimya.Text; inf_sotr_Polya.otchestvo = txtotchestvo.Text;
inf_sotr_Polya.data_rozhd = Convert.ToDateTime(dateTimePicker1.Text);
//1
if (cmbvidobrazfk.Text.Length == 0)
{
inf_sotr_Polya.vid_obraz_fk = null;
}
else
{
inf_sotr_Polya.vid_obraz_fk = Convert.ToInt32(cmbvidobrazfk.Text);
}
//2
if (cmbdolzhfk.Text.Length == 0)
{
inf_sotr_Polya.dolzhnost_fk = null;
}
else
{
inf_sotr_Polya.dolzhnost_fk = Convert.ToInt32(cmbdolzhfk.Text);
}
//3
if (cmbgenderfk.Text.Length == 0)
{
inf_sotr_Polya.pol_fk = null;
}
else
{
inf_sotr_Polya.pol_fk = Convert.ToInt32(cmbgenderfk.Text);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
...Подобные документы
Базы данных - важнейшая составная часть информационных систем. Проектирование базы данных на примере предметной области "Оргтехника". Сбор информации о предметной области. Построение информационно-логической модели данных. Разработка логической структуры.
курсовая работа [318,6 K], добавлен 24.12.2014Анализ предметной области. Проектирование концептуальной модели. Разработка логической структуры базы данных. Выделение информационных объектов. Создание глобальной схемы связей. Поддержка целостности данных. Структура и назначение существующих форм.
курсовая работа [1,4 M], добавлен 23.09.2016Разработка приложения, позволяющего автоматизировать документооборот предприятия по списанию основных средств. Мероприятия по защите и обеспечению целостности базы данных. Разработка клиентского приложения. Запросы к базе данных, руководство пользователя.
курсовая работа [700,0 K], добавлен 14.01.2015Анализ баз данных и систем управления ими. Проектирование и создание реляционной базы данных в среде MS Access для ресторана "Дельфин": построение информационно логической модели, разработка структур таблиц базы данных и схемы данных, создание Web-узла.
курсовая работа [3,7 M], добавлен 15.11.2010Разработка и освоение в современном производстве информационной подсистемы. Создание базы данных в среде MS SQL Server 2008 и приложения в среде MS Visual Studio 2012. Процесс ввода при выборе пунктов меню. Заполнение формы с критериями на фильтрацию.
отчет по практике [834,4 K], добавлен 27.11.2013Проблемы, связанные с отсутствием информационной системы. Проектирование логической схемы данных для выбранной предметной области на основе методологии IDEF1X. Разработка информационной системы с использованием MS SQL Server 2008 и MS Visual Studio 2010.
курсовая работа [3,0 M], добавлен 07.08.2013Информационно-логическая модель предметной области по нотациям Ричарда Баркера. Даталогическая модель реляционной базы данных в виде диаграммы схемы отношений. Приложение интерфейса для базы данных на языке программирования С# в среде Visual Studio.
курсовая работа [3,6 M], добавлен 23.12.2014Разработка функциональной модели предметной области. Построение UML диаграмм в среде Pacestar UML Diagrammer. Выбор программных средств разработки. Разработка логической и физической модели данных. Разработка клиентского приложения ИС в среде Access.
курсовая работа [2,2 M], добавлен 09.03.2011Цели проектирования базы данных "Аэропорт": обработка информации о рейсах, расписании самолетов и билетах. Анализ предметной области. Принцип работы модели. Особенности реализации информационной системы. Среда программирования клиентского приложения.
лабораторная работа [2,4 M], добавлен 07.01.2014Разработка автоматизированной системы управляющей компании "Дом" в среде Visual Studio 2012. Генерация списка существующих квартир. Создание базы данных и программного продукта, функциональные требования к нему. Построение диаграмм UML и ER-модели.
дипломная работа [1,0 M], добавлен 25.10.2017Системный анализ предметной области. Построение концептуальной и даталогичной модели базы данных. Физическое проектирование базы данных. Описание функциональной модели системы управления базами данных. Разработка экранных форм ввода-вывода и отчета.
курсовая работа [1,1 M], добавлен 09.12.2014Проектирование физической и логической моделей удаленной базы данных для АЗС. Разработка базы данных в СУБД Firebird с помощью утилиты IBExpert. Создание клиентского приложения для Windows с использованием клиент-серверной технологии в среде C++ Builder.
курсовая работа [3,9 M], добавлен 18.01.2017Построение инфологической (концептуальной) модели предметной области. Проектирование логической и физической структуры базы данных. Реализация проекта в среде конкретной СУБД. Организация корректировки и ввода данных в БД. Разработка интерфейса.
курсовая работа [1,4 M], добавлен 14.01.2018Создание базы данных "Спортивный клуб" средствами Microsoft Access: нормализация информационно-логической модели данных, построение связей между таблицами, разработка форм, запросов, отчетов, макросов, главной кнопочной формы в интерфейсе пользователя.
курсовая работа [2,8 M], добавлен 10.06.2011Понятие баз данных и принципы проектирования информационных систем. Разработка программы для отслеживания финансовой стороны работы компании в среде Delphi 7. Создание таблиц и схемы данных. Разработка клиентского приложения и процедуры добавления данных.
курсовая работа [1,4 M], добавлен 25.04.2012Создание реляционной базы данных "Деканат ВУЗа", средствами СУБД MS SQL Server 2000. Разработка клиентского приложения с удобным пользовательским интерфейсом (сопровождающегося меню и справочной системой). Описание связей между таблицами базы данных.
курсовая работа [3,0 M], добавлен 06.12.2014Автоматизация системы снятия показаний счетчиков энергии. Разработка базы данных и клиентского приложения для структур жилищно-коммунального хозяйства, занимающихся составлением квитанций. Описание предметной области. Тестирование клиентского приложения.
курсовая работа [953,3 K], добавлен 01.09.2016Описание первичных и результатных документов, типа связи информационных объектов. Построение информационно-логической модели базы данных и её реализация в СУБД Access (создание таблиц, запросов, форм, отчётов). Разработка интерфейса пользователя.
курсовая работа [2,1 M], добавлен 14.11.2013Системный анализ предметной области. Выбор инструментальных средств для создания программного обеспечения. Программирование на стороне SQL-сервера. Создание клиентского Win-приложения, пользовательский интерфейс. Физическое проектирование базы данных.
курсовая работа [3,7 M], добавлен 20.11.2013Разработка базы данных для информационной системы "Библиотека". Системный анализ, инфологическое, даталогическое и физическое проектирование. Программирование бизнес-логики, разработка клиентского приложения. Создание web-приложения, web-доступ.
курсовая работа [3,3 M], добавлен 15.09.2014