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

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

Министерство образования и науки Российской Федерации

ФГБОУ ВО «Марийский государственный университет»

Институт экономики, управления и финансов

Кафедра прикладной статистики и информатики

Направление подготовки 38.03.05 - «Бизнес-информатика»

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

По дисциплине «Базы данных»

На тему: «Разработка базы данных Beluga по технологии клиент-сервер»

Выполнил:

Маврин М.В.

Руководитель:

А.В. Бурков

Йошкар-Ола, 2018

Содержание

Введение

1. Общая теория Баз данных

1.1 Основные понятия Баз данных

1.2 Использование языка SQL в целях автоматизации

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

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

Заключение

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

Приложение

Введение

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

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

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

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

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

Целью данной работы является разработка БД для автоматизации учета продаж товаров, а также разработка программы-оболочки для реализации доступа к БД посредством приложения Visual Basic.

Поэтому в рамках данной работы были поставлены следующие задачи:

- изучить теоретические основы автоматизации учета продаж товаров;

- рассмотреть теоретическую основу разработки БД;

- создать БД посредством СУБД MS SQL Server;

- создать приложение-оболочку БД в Visual Basic.

При разработке базы данных будем использовать технологию «клиент-сервер». Серверную часть разработаем на основе Microsoft SQL Server 2017. Клиентскую часть - в среде Microsoft Visual Basic 2017.

1. Общая теория Баз данных

1.1 Основные понятия Баз данных

Часто, говоря о базе данных, имеют в виду просто некоторое автоматизированное хранилище данных. Такое представление не вполне корректно. Действительно, в узком смысле слова, база данных -- это некоторый набор данных, необходимых для работы (актуальные данные). Однако данные -- это абстракция; никто никогда не видел «просто данные»; они не возникают и не существуют сами по себе. Данные суть отражение объектов реального мира.

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

Каждый признак конкретного объекта есть значение атрибута. Так, продукт «майонез» имеет значение атрибута «объем», равное «5000», что отражает тот факт, что данный продукт весит 5 килограммов. Было бы ошибкой считать, что в базе данных отражаются только физические объекты. Она способна вобрать в себя сведения об абстракциях, процессах, явлениях -- то есть обо всем, с чем сталкивается человек в своей деятельности. Так, например, в базе данных можно хранить информацию о заказах на поставку на склад (хотя он -- не физический объект, а процесс). Атрибутами сущности «заказ» будут название продукта, количество, название поставщика, срок поставки и т.д.

Объекты реального мира связаны друг с другом множеством сложных зависимостей, которые необходимо учитывать в информационной деятельности. Например, продукты на склад поставляются их производителями. Следовательно, в число атрибутов детали необходимо включить атрибут «название фирмы-производителя».

Более того, база данных должна отражать связи между продуктами и производителями. Отметим, что в базе данных нужно хранить только актуальные, значимые связи.

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

Итак, мы получили представление о том, что хранится в базе данных. Теперь необходимо понять, как сущности, атрибуты и связи отображаются на структуры данных. Это определяется моделью данных.

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

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

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

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

Каждый столбец таблицы -- это совокупность значений конкретного атрибута объекта. Так, столбец Наименование представляет собой множество значений «Майонез», «Сыр», «Картофель», «Яблоки» и т.д. В столбце Объем содержатся целые неотрицательные числа.

Эти значения не появляются из воздуха. Они выбираются из множества всех возможных значений атрибута объекта, которое называется доменом.

Каждый столбец имеет имя, которое обычно записывается в верхней части таблицы.

Оно должно быть уникальным в таблице, однако различные таблицы могут иметь столбцы с одинаковыми именами.

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

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

Такой столбец (или комбинация столбцов) называется первичным ключом. В таблице Деталь первичный ключ -- это столбец Код ингридиента.

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

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

Таблицы невозможно хранить и обрабатывать, если в базе данных отсутствуют «данные о данных», например, описатели таблиц, столбцов и т.д. Их называют обычно метаданными. Метаданные также представлены в табличной форме и хранятся в словаре данных.

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

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

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

Существует несколько типов ограничений целостности. Требуется, например, чтобы значения в столбце таблицы выбирались только из соответствующего домена. На практике учитывают и более сложные ограничения целостности, например, целостность по ссылкам. Ее суть заключается в том, что внешний ключ не может быть указателем на несуществующую строку в таблице. Ограничения целостности реализуются с помощью специальных средств.

1.2 Использование языка SQL в целях автоматизации

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

Это означает, что с его помощью можно сформулировать, что необходимо получить, но нельзя указать, как это следует сделать. В частности, в отличие от процедурных языков программирования (Си, Паскаль, Ада), в языке SQL отсутствуют такие операторы, как if-then-else, for, while и т.д. Запрос на языке SQL состоит из одного или нескольких операторов, следующих один за другим и разделенных точкой с запятой. В запросах на языке SQL используются имена, которые однозначно идентифицируют объекты базы данных.

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

Каждый столбец в любой таблице хранит данные определенных типов. Различают базовые типы данных -- строки символов фиксированной длины, целые и вещественные числа, и дополнительные типы данных -- строки символов переменной длины, денежные единицы, дату и время, логические данные (два значения -- «ИСТИНА» и «ЛОЖЬ»). В языке SQL можно использовать числовые, строковые, символьные константы и константы типа «дата» и «время».

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

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

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