Курсовая работа: Разработка базы данных Beluga по технологии клиент-сервер

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Завершая обсуждение языка SQL, еще раз подчеркнем, что это -- язык запросов. На нем нельзя написать сколько-нибудь сложную прикладную программу, которая работает с базой данных. Для этой цели в современных СУБД используется язык четвертого поколения (Forth Generation Language -- 4GL), обладающий как основными возможностями процедурных языков третьего поколения (3GL), таких как Си, Паскаль, Ада, так и возможностью встроить в текст программы операторы SQL, а также средствами управления интерфейсом пользователя (меню, формами, вводом пользователя и т.д.). Сегодня язык 4GL -- это один из фактических стандартов средств разработки приложений, работающих с базами данных.

2. Постановка задачи (ТЗ)

Подробно рассмотрев теорию о создании Базы данных, можно выделить задачи, которые перед нами ставятся:

1. База данных «Beluga» должна содержать сведения о сотрудниках, должностях, продуктах и меню и заказанных блюдах;

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

3. обеспечивать поиск конкретного работника путем указания его ФИО;

4. осуществлять оформление нового сотрудника, возможность редактирования и удаление старых;

5. вести мониторинг деятельности организации;

6. выводить отчет о сотрудниках, должностях и т.д.

В процессе создания базы, мы понимаем какая информация должна содержаться в программе.

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

1. Код сотрудника

2. ФИО

3. Возраст

4. Пол

5. Адрес

6. Телефон

7. Паспортные данные

8. Код должности

В базе данных «Beluga» необходимо знать информацию о имеющихся должностях. Кадры характеризуются следующими параметрами:

1. Код должности

2. Наименование должности

3. Оклад

4. Обязанности

5. Требования

Так же присутствуют такие таблицы, как:

· Склад (Код ингредиента, Наименование ингредиента, Дата выпуска, Объём, Срок годности, Стоимость, Поставщик)

· 4) Меню (Код блюда, Наименование блюда, Код ингредиента 1, Объём ингредиента 1, Код ингредиента 2, Объём ингредиента 2, Код ингредиента 3, Объём ингредиента 3, Стоимость, Время приготовления)

· Заказ (Дата, Время, ФИО заказчика, Телефон, Код блюда 1, Код блюда 2, Код блюда 3, Стоимость, Отметка о выполнении, Код сотрудника)

Таким образом получаем следующие таблицы, которые имеют разные типы данных:

1) Сотрудники - таблица, содержащая информацию о работниках (Рис.1);

2) Должности - таблица, которая рассказывает об имеющихся должностях (Рис.2);

3) Склад - таблица, содержащая информацию о продуктах (Рис.3);

4) Меню - таблица, которая представляет информацию об имеющихся блюдах(Рис.4);

5) Заказ - таблица, содержащая информацию о совершенных заказах (Рис.5).

Рис. 1- Типы данных в SQL

Рис. 2 - Типы данных в SQL

Рис. 3 - Типы данных в SQL

Рис. 4 - Типы данных в SQL

Рис. 5 - Типы данных в SQL

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

В нашей базе данных были разработаны такие запросы:

1. «Запрос Отдел кадров» - это запрос, который содержит информацию о кадрах и должности работников (Рис. 6).

2. «Запрос Меню» - это запрос, который содержит информацию о продуктах на складе и блюдах (Рис. 7).

3. «Запрос Заказ» (Рис. 8).

Рис. 6 - Запрос «Отдел кадров»

Рис. 7 - Запрос «Заказ+меню»

Рис. 8 - Запрос «Склад+ меню»

Для более удобного рассмотрения и анализа выполнения работ были созданы фильтры по специализации («Фильтр директор», «Фильтр бармен», «Фильтр Кассир» и т.д.)

3. Сценарий работы программы

Приложение, с которым может работать пользователь, разработано в среде Visual Studio 2017. Она получает информацию из базы данных SQL-сервера импортированием данных, т.е. в системе создается таблица с аналогичными данными, как у таблицы базы данных SQL-сервера.

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

1) добавление записей;

2) редактирование записей;

3) сохранение записей;

4) выполнение выборки данных, фильтрация, сортировка;

5) выведение информации на печать в форме отчета.

При запуске программы открывается заставка (Рис. 9), на которой написано название программы, ее автор и версия.

Рис. 9 - Заставка программы

Заставка длится 3 секунды, после чего открывается главное окно программы (Рис. 10). На главном окне представлены три вкладки, с помощью которых можно переключаться по разделам:

1. Формы- табличный вид

2. Формы - ленточный вид

3. Отчеты

В которых есть кнопки по названию таблиц:

1) «Сотрудники»;

2) «Должности»;

3) «Склад»;

4) «Меню»;

5) «Заказ».

Рис. 10 - Главное окно программы

В разделе «Должности» (Рис. 11) представлена основная информация о должностях ресторана.

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

Рис. 11 - Таблица «Должности» (ленточный вид)

Рис. 12 - Таблица «Должности» (табличный вид)

Так же в Базе данных существуют запросы, которые связывают определенные таблицы (например Отдел кадров, Сотрудники+Должности) (Рис. 13)

Рис. 13 - Запрос «Отдел кадров»

Существует возможность вывести отчет по таблице, это сделано для удобной печатной версии (Рис. 14).

Рис. 14 - Отчет по таблице «Сотрудники»

На главном окне, помимо основных кнопок, также можно заметить кнопку «О программе» (Рис.15).

Рис. 15 - Окно «О программе»

Заключение

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

В процессе выполнения работы были использованы знания языка SQL, на котором были написаны запросы к базе данных, которые иллюстрируют ее работоспособность и готовность к применению. SQL (англ. Structured Query Language) -- язык структурированных запросов) -- универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных

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

Список использованной литературы

1. Андерсен В. Microsoft Office SQ. Пер. с англ.- М.: АСТ, 2012.- 572 с.

2. Атре Ш. Структурный подход к организации баз данных.- М.: Финансы и статистика, 2013.- 320 с.

3. Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем.- М.: Финансы и статистика, 2015.- 351 с.

4. ГОСТ 34.201-89 Информационная технология. Комплекс стандартов на автоматизированные системы. Виды, комплектность и обозначения документов при создании автоматизированных систем // СПС КонсультантПлюс

5. ГОСТ 34.601-90 Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизированные системы. Стадии создания // СПС КонсультантПлюс

6. ГОСТ 34.602-89 Информационная технология. Комплекс стандартов на автоматизированные системы. Техническое задание на создание автоматизированной системы // СПС КонсультантПлюс

7. ГОСТ 34.603-92 Информационная технология. Виды испытаний автоматизированных систем // СПС КонсультантПлюс

8. Джексон Г. Проектирование реляционных баз данных.- М.: Мир, 2001.- 252 с.

9. Жданов С.А. Экономические модели и методы управления.- М.: Дело и Сервис, 1998.- 495 с.

10. Информатика. Учебное пособие / Под ред. В.Г. Кирия.- Иркутск: ИрГТУ, 2015.- 382 с.

11. Кириллов В.В. Структурированный язык запросов (SQL).- СПб.: ИТМО, 2014.- 80 с.

12. Лукин С.Н. Visual Basic. Самоучитель для начинающих.- М.: Диалог МИФИ, 2012.- 544 с.

Приложение

Основной код программы.

Главное окно

Public Class Form1

Private Sub Button13_Click(sender As Object, e As EventArgs) Handles Button13.Click

Form7.Show()

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Form2.Show()

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Form3.Show()

End Sub

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

Form4.Show()

End Sub

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click

Form5.Show()

End Sub

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

Form6.Show()

End Sub

Private Sub Button12_Click(sender As Object, e As EventArgs) Handles Button12.Click

Form8.Show()

End Sub

Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click

Form9.Show()

End Sub

Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click

Form10.Show()

End Sub

Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click

Form11.Show()

End Sub

Private Sub Button21_Click(sender As Object, e As EventArgs) Handles Button21.Click

Form12.Show()

End Sub

Private Sub Button20_Click(sender As Object, e As EventArgs) Handles Button20.Click

Form13.Show()

End Sub

Private Sub Button19_Click(sender As Object, e As EventArgs) Handles Button19.Click

Form14.Show()

End Sub

Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click

Form16.Show()

End Sub

Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click

Form17.Show()

End Sub

Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click

Form18.Show()

End Sub

Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click

Form19.Show()

End Sub

Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click

Form20.Show()

End Sub

Private Sub Button16_Click(sender As Object, e As EventArgs) Handles Button16.Click

Form21.Show()

End Sub

Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click

Form22.Show()

End Sub

Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click

Form23.Show()

End Sub

Private Sub Button27_Click(sender As Object, e As EventArgs) Handles Button27.Click

Form24.Show()

End Sub

Private Sub Button26_Click(sender As Object, e As EventArgs) Handles Button26.Click

Form25.Show()

End Sub

Private Sub Button25_Click(sender As Object, e As EventArgs) Handles Button25.Click

Form26.Show()

End Sub

Private Sub ДиаграммаToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ДиаграммаToolStripMenuItem.Click

Form28.Show()

End Sub

Private Sub ЗапросыToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles ЗапросыToolStripMenuItem1.Click

Form24.Show()

End Sub

Private Sub ОПрограммеToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ОПрограммеToolStripMenuItem.Click

AboutBox1.Show()

End Sub

Private Sub ВыходToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ВыходToolStripMenuItem.Click

Me.Close()

End Sub

Private Sub СотрудникиToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles СотрудникиToolStripMenuItem.Click

Form2.Show()

End Sub

Private Sub ДолжностиToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ДолжностиToolStripMenuItem.Click

Form3.Show()

End Sub

Private Sub СкладToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles СкладToolStripMenuItem.Click

Form4.Show()

End Sub

Private Sub МенюToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles МенюToolStripMenuItem.Click

Form5.Show()

End Sub

Private Sub ЗаказToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ЗаказToolStripMenuItem.Click

Form6.Show()

End Sub

Private Sub СотрудникиToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles СотрудникиToolStripMenuItem1.Click

Form7.Show()

End Sub

Private Sub ДолжностиToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles ДолжностиToolStripMenuItem1.Click

Form8.Show()

End Sub

Private Sub СкладToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles СкладToolStripMenuItem1.Click

Form9.Show()

End Sub

Private Sub МенюToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles МенюToolStripMenuItem1.Click

Form10.Show()

End Sub

Private Sub ЗаказToolStripMenuItem1_Click(sender As Object, e As EventArgs) Handles ЗаказToolStripMenuItem1.Click

Form11.Show()

End Sub

Private Sub ОтделКадровToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ОтделКадровToolStripMenuItem.Click

Form12.Show()

End Sub

Private Sub МенюToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles МенюToolStripMenuItem2.Click

Form13.Show()

End Sub

Private Sub ЗаказToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles ЗаказToolStripMenuItem2.Click

Form14.Show()

End Sub

Private Sub СотрудникиToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles СотрудникиToolStripMenuItem2.Click

Form19.Show()

End Sub

Private Sub ДолжностиToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles ДолжностиToolStripMenuItem2.Click

Form20.Show()

End Sub

Private Sub СкладToolStripMenuItem2_Click(sender As Object, e As EventArgs) Handles СкладToolStripMenuItem2.Click

Form21.Show()

End Sub

Private Sub МенюToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles МенюToolStripMenuItem3.Click

Form22.Show()

End Sub

Private Sub ЗаказToolStripMenuItem3_Click(sender As Object, e As EventArgs) Handles ЗаказToolStripMenuItem3.Click

Form23.Show()

End Sub

Private Sub ЗапросМенюToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ЗапросМенюToolStripMenuItem.Click

Form25.Show()

End Sub

Private Sub ЗапросЗаказToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ЗапросЗаказToolStripMenuItem.Click

Form26.Show()

End Sub

End Class

Таблица меню

blic Class Form10

Private Sub МенюBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs) Handles МенюBindingNavigatorSaveItem.Click

Me.Validate()

Me.МенюBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.SkladDataSet)

End Sub

Private Sub Form10_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "SkladDataSet.Склад". При необходимости она может быть перемещена или удалена.