📄Работа №163453

Тема: Средство аварийного извлечения данных из хранилища СУБД Microsoft SQL Server 2008 R2

📝
Тип работы Бакалаврская работа
📚
Предмет информатика
📄
Объем: 158 листов
📅
Год: 2019
👁️
Просмотров: 102
Не подходит эта работа?
Закажите новую по вашим требованиям
Узнать цену на написание
ℹ️ Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.

📋 Содержание

Введение 8
1. Анализ предметной области 10
1.1. Постановка задачи 10
1.2. Обзор аналогов 10
1.2.1. Microsoft SQL Server 2008 R2 10
1.2.2. SysTools SQL MDF Viewer 11
1.2.3. Aryson SQL Viewer 12
1.2.4. Отличия от аналогов 13
1.3. Базовая информация о Microsoft SQL Server 14
1.4. Средства разработки приложения 17
1.4.1. Язык программирования С# 17
1.4.2. Среда разработки Microsoft Visual Studio 18
1.4.3. Технология Windows Forms 19
2. Разработка программы 21
2.1. Описание приложения 21
2.2. Описание модуля работы с хранилищем 22
2.3. Описание модуля графического интерфейса 27
2.4. Руководство пользователя 28
2.5. Описание работы программы 32
3. Тестирование 38
3.1. Тестирование модуля работы с хранилищем СУБД 38
3.2. Тестирование модуля графического интерфейса 38
Заключение 45
Список используемых источников 47
Приложение А Листинги модуля работы с хранилищем 48
Приложение А.1 Файл «CDataField.cs» 48
Приложение А.2 Файл «CDataFile.cs» 64
Приложение А.3 Файл «CDataPage.cs» 67
Приложение А.4 Файл «CDataRow.cs» 67
Приложение А.5 Файл «CDataRowCollection.cs» 74
Приложение А.6 Файл «CDataRowSyscolpars.cs» 77
Приложение А.7 Файл «CDataRowSysfiles» 79
Приложение А.8 Файл «CDataRowSysrscols.cs» 80
Приложение А.9 Файл «CField.cs» 82
Приложение А.10 Файл «CIAMPage.cs» 83
Приложение А.11 Файл «CIAMPageChain.cs» 84
Приложение А.12 Файл «CPage.cs» 87
Приложение А.13 Файл «CSQLTable.cs» 92
Приложение А.14 Файл «CSQLTableSysallocunits.cs» 106
Приложение А.15 Файл «CSQLTableSyscolpars.cs» 107
Приложение А.16 Файл «CSQLTableSysfiles.cs» 110
Приложение А.17 Файл «CSQLTableSysrowsets.cs» 112
Приложение А.18 Файл «CSQLTableSysrscols.cs» 113
Приложение А.19 Файл «CSQLTypes.cs» 116
Приложение А.20 Файл «CSQLviewDB.cs» 124
Приложение А.21 Файл «IMDFDatabase.cs» 128
Приложение А.22 Файл «IMDFTable.cs» 128
Приложение А.23 Файл «XType.cs» 130
Приложение Б Листинги модуля графического интерфейса 132
Приложение Б.1 Файл «CellViewForm.cs» 132
Приложение Б.2 Файл «CellViewerForm.Designer.cs» 134
Приложение Б.3 Файл «Form1.cs» 140
Приложение Б.4 Файл «Form1.Designer.cs» 144
Приложение Б.5 Файл «Program.cs» 149
Приложение В UML-диаграммы 150
Приложение В.1 Диаграмма вариантов использования 150
Приложение В.2 Диаграмма классов часть 1 151
Приложение В.3 Диаграмма классов часть 2 152
Приложение В.4 Диаграмма последовательности 153
Приложение Г Презентация 154

📖 Введение

Широкое распространение для хранения данных получила реляционная модель данных в виде реляционных баз данных и СУБД.
Реляционные базы данных обеспечивают надёжное хранение, как самих данных, так и связей между ними. На протяжении всего существования реляционных баз данных они предоставляли наилучшее сочетание устойчивости, гибкости, простоты, производительности и масштабируемости. Хранение данных базы данных о таблицах и связях между ними в каждой СУБД реализовано по-разному.
Существует множество СУБД: SQL Server, MySQL, DB2 и другие. Взаимодействие с самими базами данных возможно только посредством подключению к СУБД и SQL-запросов, которые направляются к серверу. Поэтому, когда СУБД выходит из строя или недоступно невозможно взаимодействовать с базой данных через SQL-запросы, но при этом сами файлы хранилища СУБД остаются на жёстком диске.
Однако структура файлов хранилища СУБД является сложной. У каждой СУБД своя структура файла хранилища, которая обеспечивает определённые особенности каждой СУБД. В Microsoft SQL Server структура файлов хранилища, в общем, не меняется: файл делится на страницы размером восемь килобайт, у каждой страницы имеется служебная информация — но в каждой новой версии Microsoft SQL Server появляются новые возможности или улучшается работа существующего функционала СУБД. Нередко это приводит к изменению состава системных таблиц и взаимодействию с файлом хранилища в какой-либо мере. Из-за изменений в структуре хранилища СУБД в различных версиях Microsoft SQL Server нельзя напрямую взаимодействовать с файлами хранилищ других версий.
Разобрав структуру хранилища можно выполнить действия, имитирующие работу СУБД и отобразить данные без установления связи с СУБД.
Целью данной работы является разработка приложения, которое способно отображать данные всех системных и пользовательских таблиц базы данных из файла хранилища СУБД Microsoft SQL Server 2008 R2.
Для достижения данной цели необходимо решить следующие задачи:
1. Разобрать структуру файла хранилища СУБД Microsoft SQL Server 2008 R2.
2. Разобрать взаимодействие между системными таблицами СУБД Microsoft SQL Server 2008 R2.
3. Реализовать алгоритм по получению данных таблиц из файла хранилища и их обработку на основе системных таблиц СУБД.

Возникли сложности?

Нужна качественная помощь преподавателя?

👨‍🎓 Помощь в написании

✅ Заключение

Результатом данной работы является клиентское приложение «Средство аварийного извлечения данных из хранилища СУБД Microsoft SQL Server 2008 R2». Приложение позволяет осуществлять взаимодействие напрямую с файлом хранилища СУБД без установления соединения с SQL Server. Пользователь может открывать первичные файлы хранилища СУБД, которые имеют расширение mdf, просматривать структуру базы данных, список системных и пользовательских таблиц, данные таблиц. Пользователь может копировать данные отдельных полей и целой строки, может сохранить все отображённые данные одной таблицы в текстовый файл. Пользователю предоставляется возможность просматривать данные большой длины посредством навигации к определённой позиции в данном поле и выводе определённого количества байт. Таким образом, приложение полностью соответствует заданным требованиям.
В процессе тестирования приложения были выявлены различные проблемы. Некоторые колонки в таблицах базы данных могли не содержать никакого значения, так как имеется создавать вычисляемые колонки, значение которых вычисляется при отображении данных посредством заданной формулы и других значений строки. Проблема была решена путём сравнивания данных из системных таблиц syscolpars и sysrscols — таблица syscolpars всегда содержит информацию о всех колонках таблицы, когда таблица sysrscols не хранит информацию о вычисляемых колонках. При отображении данных могли отображать не все записи, что при отображении их непосредственно в СУБД. Проблема была решена путём разбора индексной карты размещения определённой таблицы и поиском на основе разбора в определённых блоках размером восемь страниц в файле хранилище СУБД.
В дальнейшем приложение может быть улучшено путём добавления нового функционала на основе дальнейшего изучения системных таблиц и работы СУБД Microsoft SQL Server 2008 R2 и путём добавления возможности просматривать данные из первичных файлов хранилища СУБД различных версий. При дальнейшем изучении структуры базы данных, может быть добавлено отображение триггеров, функций и других элементов базы данных. При разработке модулей работы с хранилищем для других версий SQL Server, можно будет работать с файлами хранилища СУБД различных версий, может быть реализовано автоопределение версии SQL Server при открытии файла хранилища.
В ходе выполнения работы, были получены навыки разработки клиентского приложения с графическим интерфейсом. Значительно были развиты навыки применения основных принципов объектно - ориентированного приложения, такие как наследование и полиморфизм. Был получен опыт в создании графического интерфейса при помощи технологии Windows Forms.
Нужна своя уникальная работа?
Срочная разработка под ваши требования
Рассчитать стоимость
ИЛИ

📕 Список литературы

Список используемых источников
1) MSDN [Электронный ресурс] — URL:https://msdn.microsoft.com/
2) Nicholas, P Ashton-Tate/Microsoft SQL Server: PC databases enter a new era/ P. Nicholas, K. Alex, M. Scott // InfoWorld - 1989. - Vol. 11, №41. - P. 55 - 75.
3) Билл, В. Наиболее эффективное программирование на С#. 50 способов улучшения кода / В. Билл — Издательство: Вильямс, 2018 г. — 224 с.
4) Либерти, Д. Программирование на С# /Д. Либерти — Издательство: Символ-Плюс, 2003 г. — 688 с.

🖼 Скриншоты

🛒 Оформить заказ

Работу высылаем в течении 5 минут после оплаты.

©2026 Cервис помощи студентам в выполнении работ