Безопасность базы данных

Основные данные о работе

Версия шаблона

2.1

Филиал

Калужский

Вид работы

Курсовая работа

Название дисциплины

Базы данных

Тема

Безопасность базы данных

Фамилия студента

Степанов

Имя студента

Сергей

Отчество студента

Вячеславович

№ контракта

0640212403909003


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Содержание

Введение…………………………………………………………………………….3

1 Разработка эскизного и технического проектов………………………………5

2 Разработка рабочего проекта…………………………………………………...13

Заключение………………………………………………………………………..26

Глоссарий………………………………………………………………………….27

Список использованных источников…………………………………………….30

Список сокращений………………………………………………………………31

Приложения………………………………………………………………………32

   Введение

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

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

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

Тема данной курсовой работы - создать программу ведения базы данных личной библиотеки – очень актуальна на сегодняшний день в связи с активным стремлением к автоматизации различных процессов программными средствами. Создание базы данных личной библиотеки позволит упростить поиск литературы, необходимой пользователю в данной момент. При этом базы данных являются эффективным средством представления структур данных и манипулирования ими.

Одной из наиболее распространенных для обучения является MS Access.

Microsoft Access – это интерактивная реляционная СУБД для Windows.

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

Исходя из поставленной цели можно сформулировать следующие задачи:

- изучение области применения;

- проектирование базы данных;

- разработка рабочего проекта.

Программа должна обеспечивать:

- ввод и корректировку информации о новых книгах;

- поиск информации о книгах  определенного автора;

- поиск информации о книгах  определенного жанра.

В качестве среды разработки данной программы является Borland Delphi 7, который предоставляет широкий инструментальный набор:

  • простота языка;
  • возможность использования стандартных компонентов;
  • высокая скорость разработки приложения;
  • высокая скорость работы программы.

Delphi – среда программирования, относящаяся к классу RAD (Rapid Application Development – средство быстрой разработки приложений) – средств CASE-технологии.

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

 

 

Основная часть

1 Разработка эскизного и технического проектов

Задание

Тема: создать программу ведения базы данных личной библиотеки.

Условия задачи: программа должна:

- вводить и корректировать информацию  о новых книгах;

- искать информацию о книгах  определенного автора;

- искать информацию о книгах определенного жанра.

Назначение и область применения

Необходимо разработать программу ведения базы данных личной библиотеки.

Базы данных - это один или несколько файлов данных, предназначенных для хранения, изменения и обработки больших объемов взаимосвязанной информации.

Базы данных - это специальным образом организованные данные.

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

Для проектируемой базы данных предметной областью является личная библиотека. В библиотеке собраны книги разных авторов, издательств, годов издания - все это представляет интерес для данной разработки.

База данных «Личная библиотека» создается для экономии времени при поиске книг, а так же быстрого получения ответов на такие вопросы, как:

-Наличие  или отсутствие данной книги  в личной библиотеке.

-Где  находится искомая книга.

-Кто  автор искомой книги.

-Какие  книги данного автора собраны  в библиотеке.

-В  каком году и где издана  искомая книга.

При работе с такой базой получать интересующую информацию намного легче.

Технические характеристики

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

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

Программа имеет привлекательный и вполне понятный интерфейс. Она очень компактна и не требует для своей работы никаких дополнительных библиотек.

При установке и работе не изменяет конфигурацию существующей базы данных и не нуждается в настройках.

Основными целями разработки информационной системы являются:

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

Функциональность информационной системы:

  • редактирование сведений о книгах;
  • добавление книг;
  • редактирование категорий;
  • удаление книг;
  • поиск книг по авторам:
  • поиск книг по жанрам;
  • формирование печатной формы отчета о имеющихся книгах в личной библиотеке и их местоположение.;
  • формирование печатных форм в программе MS Word для редактирования, форматирования, предварительного просмотра;
  • вывод печатных форм на печать.

Для хранения данных (книг) используется файл Личная_библиотека.mdb.

Файл содержит следующие входные таблицы:

Книги

Имя поля

Тип данных

Код

числовой

Название_книги

текстовый

Автор

текстовый

Издательство

текстовый

Год_издания

числовой

Количество_страниц

числовой

Жанр_книги

текстовый


 

Хранение_книг

Имя поля

Тип данных

Код

числовой

Место_хранение

текстовый


 

Информационная модель базы данных «Личная библиотека» представлена на рисунке 1.

Рисунок 1- Информационная модель БД «Личная библиотека»

Описание алгоритма

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

- операции с книгами;

- поиск книг;

- печать.

Операции с книгами включает следующие подзадачи:

- добавление книги;

- редактирование книги;

- удаление книги.

Операция поиска книг включает следующие подзадачи:

- поиск по автору;

- поиск по жанру.

Операция вывода на печать включает следующие подзадачи:

- список книг;

- местоположение книг.

Обобщенная схема алгоритма приведена на рисунке 2.


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 2-Обобщенная схема алгоритма

Организация входных и выходных данных

При разработке базы данных «Личная библиотека» было проведено исследование предметной области. В результате в БД используются следующие входные данные:

-информация  о книгах;

- информация о месте положения  книги.

Отчeты, зaпpocы и фopмы являются выxoдными дaнными. В oтчетax и нa фopмax вывoдятcя инфopмaция, yпpoщающих работу с записями таблиц базы данных. Чтo пoзвoляeт пoльзoвaтeлю знaчитeльнo ycкopить пpoцecc oбрaбoтки и выбopки дaнных из бaзы дaнныx.

Выбор состава технических и программных средств.

Технические характеристики компьютера:

  • процессор не ниже Pentium III;
  • оперативная память не менее 512 Мб;
  • свободное дисковое пространство для программы не менее 50 Мб;
  • монитор 17’’ с разрешением не менее 1024x768 и глубиной цвета 32 бита;
  • клавиатура;
  • манипулятор «мышь»;
  • привод CD-ROM 4x;
  • принтер.

Именно эти параметры создают условия для полноценной работы программы, созданный в этой среде.

Операционная система Windows XP Professional – операционная система, имеющая графический интерфейс. В этой среде экранная картинка представляет собой совокупность некоторых объектов: окон, кнопок, документов. Каждый объект обладает своими свойствами и поведением, которое запрограммировано разработчиком программ. Деятельностью программ управляют события: щелчок мыши, наведение курсора и т.д., каждое из которых порождает сообщение. Полученное сообщение приводит к выполнению действия, и так цикл продолжается до бесконечности. Операционная система Windows XP Professional имеет стандартизированные элементы управления, что позволяет пользователям быстро разобраться в управлении тем или иным приложением.

Достоинства Windows XP Professional:

  • поддержка разнообразных дополнительных устройств;
  • многозадачность Windows за счет большого быстродействия процессора;
  • единый программный интерфейс;
  • легкость обмена данными между различными приложениями.

Используемая среда программирования. Borland Delphi 7.0 – мощная среда подготовки прикладных программ и приложений самого разного характера и назначения. С помощью средств интегрированной среды IDE, используемой в Delphi7, можно удобно проектировать интерфейсную часть приложения, а также писать программный код и связывать его с управляющими элементами.

Исходный текст программы автоматически переводится в набор инструкций процессора с помощью специальной программы – компилятора, который за секунду анализирует и транслирует тысячи строк исходного кода. Еще до компиляции он видит результаты своей работы - после подключения к источнику данных их можно видеть отображенными на форме, представлять их в том или ином виде. После выполнения компиляции получаем код, который исполняется в 10-20 раз быстрее, чем код приложения, сделанного при помощи интерпретатора. Это позволяет разработчикам строить приложения быстро из заранее подготовленных объектов, а также создавать свои собственные объекты для среды Borland Delphi 7.0 без ограничений по типам.

Delphi7 содержит несколько важнейших  технологий:

  • объектно-ориентированную модель компонентов;
  • высокопроизводительный компилятор в машинный код;
  • визуальное построение приложений из программных прототипов.

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

Базы данных – это совокупность сведений (о реальных объектах, процессах, явлениях), относящихся к определенной теме или задаче, организованная таким образом, чтобы обеспечить удобное представление этой совокупности, как в целом, так и любой ее части.

Реляционная база данных представляет собой множество взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определенного типа. Каждая строка таблицы включает данные об одном объекте, а столбцы таблицы содержат различные характеристики этих объектов - атрибуты. Строки таблицы называются записями; все записи имеют одинаковую структуру - они состоят из полей, в которых хранятся атрибуты объекта. Каждое поле записи содержит одну характеристику объекта и имеет строго определенный тип данных (например, текстовый, числовой, дата и время). Все записи имеют одни и те же поля, только в них содержатся разные значения атрибутов.

Основные функции СУБД – это определение данных (описание структуры баз данных), обработка данных и управление данными. Для выполнения простейших операций с данными (добавление и удаление из таблицы одной или нескольких записей; обновление значений некоторых полей в одной или нескольких записях; поиск одной или нескольких записей по заданному условию) используются запросы, результатом которых является либо отобранное по определенным критериям множество записей, либо изменения в таблицах. Запросы к базе формируются на специально созданном языке структурированных запросов SQL (Structured Query Language).

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

Технология проектирования. В настоящее время широкое распространение получила RAD-методология – методология быстрой разработки приложений. Данная методология охватывает все этапы жизненного цикла современных информационных систем.

RAD-модель обладает следующими  достоинствами:

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

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

 

2 Разработка рабочего проекта

Разработка программы

Для разработки программы используется среда визуального программирования Delphi. Проект программы содержит следующие окна:

1. Form1 – База данных «Личная библиотека»

2. Form2 – добавление новой книги в базу

3. Form3 – изменение информации о книгах

4. Form4 – поиск по жанру книги

5. Form5 – поиск по автору книги

6. Form6 – список книг

7. Form7 – изменить место хранения книги

8. Form8 – удаление книги

9. Form9 – местоположение книг

10. Form10 – заставка

Окно Form1 База данных «Личная библиотека» (рисунок 2.1).

Рисунок 3- Главное окно программы – Form1

 

Компонент Form1

Свойства:

Сaption – База данных «Личная библиотека»;

События: FormCreate закрыть форму Заставки ;

. 1 – компонент TМainMenu

Свойства:

Items: Операции с книгами (N5): добавление (N6), редактирование(N7), удаление(N8);

Поиск (N1): по автору (N2), по жанру (N3);

Печать (N4): список книг (N9), местоположение книг (N10);

Справка (Dsjl1); Выход (N11).

События:

N2Click – поиск информации в базе по автору книг.

N3Click – поиск информации в базе по жанру книг.

N6Click – перейти к работе со второй формой.

N7Click – перейти к работе с третьей формой.

N8Click – перейти к работе с восьмой формой.

N9Click – перейти к работе с шестой формой.

N10Click – перейти к работе с девятой формой.

Dsjl1Click – перейти к работе со справкой.

N11Click – закончить работу с программой.

2 – компонент  TLabel1- TLabel8 – названия полей

3 – компонент  ТDBEdit1 – ТDBEdit8 – вывод содержимого полей из базы данных.

Свойства:

DataSource =DataSource1

4 – компонент  DBNavigator1

DataSource =DataSource1

VisibleButton=[nbPrior,nbNext]

5 – компонент  ADOTable1

Свойства:

ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Личная  библиотека.mdb;Persist Security Info=False

TableName= Книги

6 – компонент  ADOTable2

Свойства:

ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Личная  библиотека.mdb;Persist Security Info=False

MasterSourse = DataSource1

TableName= хранение_книг

7– компонент  DataSource1

Свойства:

DataSet = ADOTable1

9– компонент  DataSource2

Свойства:

DataSet = ADOQuery1

10– компонент  DataSource3

Свойства:

DataSet = ADOTable2

11– компонент  ADOQuery1

Свойства:

ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Личная  библиотека.mdb;Persist Security Info=False

SQL = SELECT Книги.Код, Книги.Название_книги, Книги.Автор, Книги.Издательство, Книги.Год_издания, Книги.Количество_страниц, Книги.Жанр_книги, хранение_книг.Место_хранение

FROM Книги INNER JOIN хранение_книг ON Книги.Код = хранение_книг.Код;

Программа

procedure TForm1.N2Click(Sender: TObject);

// процедура поиска по автору  в базе данных

var

   st: string;

begin

   st := InputBox('Поиск','Введите автора','');

  if st <> '' then

    // пользователь ввел  критерий запроса

    begin

      // фильтр

      ADOTable1.Filtered := False;

      ADOTable1.Filter :='Автор Like ''%' + st + '%''';

      ADOTable1.Filtered := True;

      form5.show;

      end;

      if ADOTable1.RecordCount = 0 then   

        begin  form5.Hide;

          // В базе данных нет записей,

          // удовлетворяющих  критерию запроса.

          ADOTable1.Filtered := False;

          ShowMessage('В  БД нет записей, удовлетворяющих  критерию запроса.');   

        end;

end;

procedure TForm1.N3Click(Sender: TObject);

// процедура поиска по жанру  в базе данных

 var

   st: string;

begin

   st := InputBox('Поиск','Введите жанр книги','');

  if st <> '' then

    // пользователь ввел  критерий запроса

    begin

      // фильтр

      ADOTable1.Filtered := False;

      ADOTable1.Filter :='Жанр_книги Like ''%' + st + '%''';

      ADOTable1.Filtered := True;   form4.show;

      end;

      if ADOTable1.RecordCount = 0 then

        begin   form4.Hide;

          // В базе данных нет записей,

          // удовлетворяющих  критерию запроса.

          ADOTable1.Filtered := False;

          ShowMessage('В БД нет записей, удовлетворяющих критерию запроса.');

        end;

end;

// процедура вызова справки

procedure TForm1.Dsjl1Click(Sender: TObject);

begin

ShellExecute(Handle, nil,'Help/Help.exe', nil, nil, SW_SHOW);

end;

end.

Процедура TForm1.N2Click – поиск книг по автору в базе данных «Личная библиотека».

Схема алгоритма поиска книг по автору в базе данных представлена в Приложении В на рисунке 2.2.

procedure TForm2.Button1Click(Sender: TObject);

// процедура добавления книги  в базу данных

begin

form1.ADOTable1.Insert;

form1.ADOTable1.FieldByName('Код').AsString:=Edit8.Text;

form1.ADOTable1.FieldByName('Название_книги').AsString:=Edit1.Text;

form1.ADOTable1.FieldByName('Автор').AsString:=Edit2.Text;

form1.ADOTable1.FieldByName('Издательство').AsString:=Edit3.Text;

form1.ADOTable1.FieldByName('Год_издания').AsString:=Edit4.Text;

form1.ADOTable1.FieldByName('Количество_страниц').AsString:=Edit5.Text;

form1.ADOTable1.FieldByName('Жанр_книги').AsString:=Edit6.Text;

form1.ADOTable1.Post;

form1.ADOTable2.Insert;

form1.ADOTable2.FieldByName('Код').AsString:=Edit8.Text;

form1.ADOTable2.FieldByName('Место_хранение').AsString:=Edit7.Text;

form1.ADOTable2.Post;

form2.Hide;

end.

Схема алгоритма добавления данных в базу представлена в Приложении В на рисунке 2.3.

procedure TForm3.Button1Click(Sender: TObject);

// процедура изменения данных о книгах

begin

form1.ADOTable1.Post;

form7.show;

end.

procedure TForm6.Button1Click(Sender: TObject);

// вывод списка книг на печать

var Doc:Variant;

i,i0:Integer;

j:integer;

summa:Currency;

WordApp:OleVariant;

begin

try

Doc:=CreateOleObject('Word.Application'); //создаем ole-объект

except

Exit;

end;

doc.documents.add();

Doc.Selection.InsertAfter('Список книг в личной библиотеке') ;

Doc.Selection.ParagraphFormat.Alignment := wdAlignParagraphCenter;

Doc.Selection.Font.Bold:=1;

Doc.Selection.Font.Size:=14;

Doc.Selection.Collapse(wdCollapseEnd);

Doc.Selection.TypeParagraph;

Doc.Selection.TypeParagraph;

i:=form1.ADOTable1.RecordCount+1;

doc.Selection.Tables.Add(doc.Selection.Range,i,7, EmptyParam, EmptyParam);

doc.Selection.Tables.Item(1).Borders.InsideLineStyle:= wdLineStyleSingle;

doc.Selection.Tables.Item(1).Borders.OutsideLineStyle:= wdLineStyleSingle;

doc.Selection.Tables.Item(1).Cell(1,1).Select;

doc.Selection.InsertAfter('Код');

doc.Selection.Tables.Item(1).Cell(1,2).Select;

doc.Selection.InsertAfter('Название книги');

doc.Selection.Tables.Item(1).Cell(1,3).Select;

doc.Selection.InsertAfter('Автор');

doc.Selection.Tables.Item(1).Cell(1,4).Select;

doc.Selection.InsertAfter('Издательство');

doc.Selection.Tables.Item(1).Cell(1,5).Select;

doc.Selection.InsertAfter('Год издания');

doc.Selection.Tables.Item(1).Cell(1,6).Select;

doc.Selection.InsertAfter('Количество страниц');

doc.Selection.Tables.Item(1).Cell(1,7).Select;

doc.Selection.InsertAfter('Жанр книги');

form1.ADOTable1.First;

//----------цикл для перебора всех  данных

for i:=2 to form1.ADOTable1.RecordCount+1 do

begin

doc.Selection.Tables.Item(1).Cell(i,1).Select;

doc.selection.font.bold:=wdToggle;

doc.Selection.InsertAfter(form1.ADOTable1.Fields[0].AsString);

doc.Selection.Tables.Item(1).Cell(i,2).Select;

doc.selection.font.bold:=wdToggle;

doc.Selection.InsertAfter(form1.ADOTable1.Fields[1].AsString);

doc.Selection.Tables.Item(1).Cell(i,3).Select;

doc.selection.font.bold:=wdToggle;

doc.Selection.InsertAfter(form1.ADOTable1.Fields[2].AsString);

doc.Selection.Tables.Item(1).Cell(i,4).Select;

doc.selection.font.bold:=wdToggle;

doc.Selection.InsertAfter(form1.ADOTable1.Fields[3].AsString);

doc.Selection.Tables.Item(1).Cell(i,5).Select;

doc.selection.font.bold:=wdToggle;

doc.Selection.InsertAfter(form1.ADOTable1.Fields[4].AsString);

doc.Selection.Tables.Item(1).Cell(i,6).Select;

doc.selection.font.bold:=wdToggle;

Безопасность базы данных