Транзакции. Пример оформления отчета по РГЗ. "Проектирование системы распределенной обработки данных"
![]()
|
В окне “Пользователь базы данных - Создать”, необходимо указать имя пользователя и выбрать имя входа. После этого следует перейти на закладку “Защищаемые объекты” и установить разрешения для каждой таблицы базы данных у каждого пользователя, согласно заданных ему прав в таблице “Уровни доступа пользователей к базе данных”. На рисунках 6 и 7 представлено создание имени входа для администратора. Имя входа для оператора (кредитного эксперта) создается аналогичным образом. ![]() ![]() Рисунок 6 – Создание пользователя “Администратор” ![]() Рисунок 7 – Назначение разрешений для администратора 2 ![]() Разработка программного средства представляет собой разработку клиентского приложения для обработки данных из базы данных, реализованного на основе архитектуры “клиент-сервер” между клиентским приложением и сервером базы данных 2.2.1 Настройка удаленного подключения к СУБДДля обеспечения доступа к СУБД с удаленных компьютеров сети необходимо активизировать протокол TCP/IP для работы с клиент-серверном режиме. Для этого следует запустить утилиту “Диспетчер конфигурации SQL Server” . Для этого следует выбрать “Пуск”→”Все программы”→”Microsoft SQL Server 2008”→”Средства настройки”→”Диспетчер конфигурации SQL Server”. В разделе “Сетевая конфигурация SQL Server”→”Протоколы для …” нажать правой кнопкой мыши на строке “TCP/IP” и в контекстном меню выбрать пункт “Свойства” (рисунок 8). ![]() Рисунок 8 – Пункт “Диспетчер конфигураций SQL сервера” На закладке “Протокол” следует выбрать протокол TCP/IP. Затем в окне свойства протокола TCP/IP установить параметр “Включено” = “Да”, а на закладке “IP-адреса” (рисунок 9) в разделе “IPAll” задать параметр “TCP-порт” = “1433”. После этого следует нажать кнопку “ОК” (рисунок 10). ![]() ![]() Рисунок 9 – Закладка “Протокол” ![]() Рисунок 10 – Закладка “IP-адреса” 2.2.2 Настройка клиентского приложения для связи с базой данныхВ первую очередь при работе с новым проектом следует подключиться к серверу Microsft SQL Server 2008 R2. Для этого необходимо открыть главное окно инструментальной среды Visual Studio 2008, в котором выбрать окно обозревателя серверов, выбрав в главном меню “Вид”→ “Обозреватель серверов”. После загрузки окна “Обозреватель серверов” следует в левой части окна выбрать меню “Подключение данных”. После этого откроется окно “Выбор источника данных”, в котором следует указать в качестве источника “Microsoft SQL Server” и нажать кнопку “Продолжить” (рисунок 11). В окне “Добавить подключение” следует указать имя сервера (рисунок 12). Далее следует в пункте “Вход на сервер” установить указатель “Ипользовать проверку подлинности SQLServer” в положение выбрано. Затему следует указать имя и пароль пользователя базы данных и имя базы данных [10]. В данном случае имя базы данных var25. ![]() ![]() Рисунок 11 - Выбор источника данных ![]() Рисунок 12 – Добавление подключения З ![]() ![]() Рисунок 13 – Подключенная база данных в окне “Обозреватель серверов” После этого следует в главном меню открыть пункт “Данные”, после этого следует выбрать пункт подменю “Показать источники данных”. В открывшемся окне “Источники данных” следует нажать ссылку “Добавить новый источник данных” [10]. В поле “Источник данных для приложения” следует выбрать “База данных” (рисунок 14). ![]() Рисунок 14 – Выбор типа источника данных После этого в следующем пункте “Выбор подключения базы данных” следует пункт “Да, включить конфиденциальные данные в строку подключения” установить в положение выбрано и снова нажать кнопку “Далее” (рисунок 15). ![]() ![]() Рисунок 15 – Выбор подключения базы данных В результате этого откроется пункт “Сохранение подключения в файле конфигураций приложения” (рисунок 16). В этом пункте следует установить указатель пункта “Да, сохранить подключение как:” и нажать кнопку “Далее”. ![]() Рисунок 16 – Сохранение подключения в файле конфигураций приложения В ![]() ![]() Рисунок 17 – Выбор объектов базы данных В результате выполнения описанных шагов в меню “Источники данных” будут загружены объекты базы данных, которые будут доступны приложению. 2.3 Организация обработки параллельных транзакций При многопользовательском доступе к базе данных могут возникать конфликтные ситуации. Например, если один пользователь добавляет информацию в определенную таблицу, а другой читает информацию из этой таблицы, то конфликта не возникает. Проблема проявляется при одновременном обращении нескольких пользователей к одним и тем же данным с целью их корректировки. Для сохранения целостности данных в условиях параллельно идущих запросов к базе данных используются транзакции. “Транзакция” - группа последовательных операций, которая представляет собой логическую единицу работы с данными. Транзакция может быть выполнена целиком либо успешно, соблюдая целостность данных и независимо от параллельно идущих других транзакций, либо не выполнена вообще и тогда она не должна произвести никакого эффекта [4]. В ![]() Пример ииспользования транзакции с уровнем изоляции ReadCommetted: //Начало транзакции SqlTransaction Transaction = Connection.BeginTransaction(System.Data.IsolationLevel.ReadCommitted); Command.Transaction = Transaction; Command.CommandText = "SELECT * FROM [loanAgreements] WHERE id="+id; SqlDataReader Data = Command.ExecuteReader(); if (!Data.Read()) { Data.Close(); Transaction.Rollback(); MessageBox.Show("Извините, данные кредитного договора в настоящий момент не доступны!"); } else { Data.Close(); Command.CommandText = "UPDATE [loanAgreements] SET InterestRate = "+newInterestRate; Command.ExecuteReader(); Transaction.Commit(); MessageBox.Show("Данные успешно изменены!"); } } В данном примере, если кредитный эксперт изменяет данные в договоре клиента, например процентную ставку, то будет выдано сообщение “Данные успешно сохранены” (рисунок 18). В случае если второй кредитный эксперт пытается одновременно изменить те же данные, то его транзакция не будет выполнена. При этом ему будет выведено сообщение “Извините, данные были изменены ранее!” (рисунок 19). ![]() ![]() Рисунок 18 – Корректировка кредитного договора первым оператором ![]() Рисунок 19 – Попытка изменения данных договора вторым экспертом 3 ![]() 3.1 Требования к системным ресурсам Минимально необходимая конфигурация компьютера для установки программной системы: IBM PC-совместимый компьютер тактовой частотой процессора не менее 1 ГГц; 1 Гбайт оперативной памяти; 100 Мбайт свободного места на жестком диске; видеоадаптер SVGA или лучшего разрешения 1280х1024 пикселей; устройство для чтения компакт-дисков CD-ROM; манипулятор “мышь” или совместимое устройство; клавиатура; операционная система Microsoft WindowsXP \Vista\7 cустановленной платформой Microsoft Framework .NET 4. установленная СУБД Microsoft SQL Server 2008 Express Edition; установленный Microsoft .NET Framework3.5 с пакетом обновления. 3.2 Руководство администратора баз данных Данная база данных предназначена для хранения информации клиентах банка и выданным им кредитам. База данных содержит данные о кредитозаемщике и кредитном эксперте, а также непосредственно о кредите. При оформлении кредита оформляется кредитный договор, который включает сумму кредита, процентную ставку, сумму ежемесячного платежа. Программное средство обеспечивает соединение с базой данных и работу в многопользовательском режиме с информацией клиентах банка и выданных им кредитов. Помимо этого в программное средстве реализуется формирование выходных документов о результатах выдачи кредитов клиентов по различным критериям. Для функционирования программной системы необходимо, чтобы на сервере локальной сети была установлена СУБД MS SQL Server 2008, в которой была реализована разработанная база данных. Перед началом работы пользователей с программной системой необходимо их зарегистрировать в СУБД MS SQL Server. Для этого сначала следует создать имя входа на сервер для каждого уровня доступа, а также создать непосредственно пользователя в среде SQL Server Management Studio Затем необходимо подключить базу данных к серверу, использовав для этого пункт контекстного меню “Присоединить”, выбранный в обозревателе объектов среды SQL Server Management Studio. В появившемся окне “Присоединение к базе данных” следует указать местоположение файла базы данных. В данном примере это var25.mdf (рисунок 20). ![]() ![]() Рисунок 20 – Подключение базы данных к серверу Затем необходимо запустить программное средство, запустив файл “Client.exe”. После запуска необходимо подключиться к базе данных и авторизоваться на сервере. Для этого нужно ввести адрес сервера, выбрать уровень доступа пользователя (оператор или администратор), ввести логин и пароль и нажать кнопку “Подключиться” (рисунок 21). ![]() Рисунок 21 – Окно подключения и авторизации на сервере С ![]() После проверки IP-адреса осуществляется проверка уровня доступа – администратор или оператор (кредитный эксперт). Если будут введены неверные логин или пароль будет выдано сообщение, уведомляющее об ошибке авторизации (рисунок 23). ![]() Рисунок 22 – Ошибка подключения ![]() Рисунок 23 – Ошибка авторизации После успешной авторизации будет запущенно главное окно программного средства, представленное на рисунке 24. ![]() ![]() Рисунок 24 – Главное окно программного средства под уровнем доступа “Администратор” Как видно на рисунке 24 администратору доступны пункты: “Кредиты” и “Данные”. В пункте меню “Данные” предоставляется возможность работы со справочными данными. Пункт меню “Кредиты” реализуется возможность работы с договорами клиентов. Для выбора справочных таблиц для редактирования данных необходимо выбрать соответствующие подпункты пункта меню “Данные”. В программном средстве имеется возможность добавления, корректировки, удаления справочной информации. На рисунках 25-30 представлены окна работы cо справочными данными. Так на рисунке 25 представлено окно работы со справочником “Банки“. Так на рисунке 26 представлено окно работы со справочником “Населенные пункты“. ![]() Рисунок 25 – Окно работы со справочником “Банки” ![]() ![]() Рисунок 26 – Окно работы со справочником “Населенные пункты” Так на рисунке 27 представлено окно работы со справочником “Валюта”. ![]() Рисунок 27 – Окно работы со справочником “Валюта” Н ![]() ![]() Рисунок 28 – Окно работы со справочником “Типы банков” ![]() Рисунок 29 – Окно работы со справочником “Цели кредита” ![]() ![]() Рисунок 30 – Окно работы со справочником “Должности” Помимо добавления и изменения информации в справочных таблицах, администратор имеет возможность работы с данными кредитозаемщика с помощью пункта “Кредиты” (рисунок 31). После выбора данного пункта меню администратору доступны для корректировки поля “Имя”, “Отчество”, “Фамилия”, “Дата рождения”, а также паспортные данные клиента банка. ![]() Рисунок 31 – Окно с учетными данными клиентов банка |