Содержание
Введение
. Анализ предметной области
.1 Общие сведения
.2 Основные сведения о предметной области
.3 Перечень хранимой информации: таблицы, поля, типы
.4 Необходимые предполагаемые запросы к БД
.5Выводы по разделу
. Моделирование предметной области
.1 Общие сведения
.2 Выделение сущностей, атрибутов, ключей, связей
.3 Проектирование диаграммы сущность-связь в EA
.4 Создание БД в MS SQL SERVER. Перенос схемы из EA
.5 Создание диаграммы средствами MS SQL SERVER и MS SQL SERVER Management Studio
.6 Начальное заполнение БД
.7 Выводы по разделу
. Создание и запуск базовых запросов SQL
.1 Общие сведения
.2Запросы (+контрольная работа 1)
.3Выводы по разделу
4. Создание и запуск продвинутых запросов SQL
.1 Общие сведения
.2 Запросы (+контрольная работа 2)
.3 Выводы по разделу
. Создание и использование представлений (Views)
Заключение
Список используемой литературы
Приложения
Введение
База данных - это организованная структура, предназначенная для хранения информации. С понятием базы данных тесно связано понятие системы управления базой данных.
Такая система должна:
· обеспечивать получение общих и/или детализированных отчетов по итогам работы;
· позволять легко определять тенденции изменения важнейших показателей;
· обеспечивать получение информации, критической по времени, без существенных задержек;
· выполнять точный и полный анализ данных. [1]
Целью данной курсовой работы является анализ предметной области - магазин «Канцелярские товары», проектирование и реализация учебной базы данных в указанной предметной области. В качестве СУБД для реализации базы данных была использована СУБД реляционного типа - MS SQL Server.
В рамках курсовой работы были поставлены следующие задачи:
- Анализ предметной области магазин «Канцелярские товары».
- Проектирование БД в исследуемой предметной области (включающее проектирование структуры таблиц, ключевых полей и схемы данных).
- Приобретение навыков по созданию запросов различных типов.
1. Анализ предметной области
.1 Общие сведения
В магазине хранятся товары, услугами магазина пользуются тысячи клиентов. Для обеспечения оперативности ведения информации о товарах, информации о фирмах, поставляющих данные товары, цены, поставляемых товаров - необходима автоматизированная система, основанная на современной базе данных. Использование базы данных и автоматизированной системы для работы с базой данных существенно упростит, а главное вся информация, касающаяся товаров в данном магазине, будет храниться в одном месте. Время работы продавцов значительно сократиться.
В магазине необходимо хранить разнообразную информацию о товарах, чтобы оперативно можно было определить всю нужную информацию о нем. Необходимо учесть, что товары в магазине могут присутствовать в нескольких экземплярах, что товары могут поставляться одной фирмой, могут иметь одинаковое название, поэтому товарам необходимо присваивать некоторые уникальные шифры.
1.2 Основные сведения о предметной области
Проанализировав предметную область, можно сказать, что разработка базы данных для данного магазина актуальна. Целью разработки базы данных магазина «Канцелярские товары» и является повышение качества и скорости обслуживания клиентов.
Эти цели могут быть достигнуты за счет
сокращения времени поиска необходимых товаров по определенным критериям, за
счет снижения времени поиска информации о фирмах.
1.3 Перечень хранимой информации: таблицы, поля, типы
БД магазина должна включать в себя четыре
таблицы, предназначенные для эффективности работы предприятия и автоматизации
обработки результатов его деятельности: Поставщик, Товар, Склад, Поставка.
Таблицы связаны между собой, что обеспечивает целостность данных. База данных
предназначена, в первую очередь, для сотрудников - полный учет товаров,
контроль работы в целом.
Таблица 1 - Состав таблиц базы данных
|
Наименование |
Общие сведения о содержимом |
|
Товар |
Информация о товарах |
|
Склад |
Информация о количестве товара на складе |
|
Поставщик |
Информация о поставщиках |
|
Поставка |
Информация о поставках товаров поставщиками |
Таблица Товар содержит информацию о номенклатуре товаров магазина, в данной таблице отображены следующие поля: Код товара, Название и Цена.
Таблица Склад содержит информацию о количестве товара на складе магазина, в данной таблице отображены следующие поля: Код товара и Количество. база данные информация атрибут
Таблица Поставщик содержит информацию о поставщиках данного магазина, в таблице описаны следующие поля: Код поставщика, Название организации и Контактный телефон.
Таблица Поставка содержит информацию о поставках
товаров в магазин, она содержит следующие поля: Дата поставки, Количество
поставленного товара, Код товара и Код поставщика.
1.4 Необходимые предполагаемые запросы к БД
Примерными запросами данной базы данных являются:
- Удаление и вывод определенных товаров;
- Вывод на экран всей номенклатуры товаров;
- Отображение сведений о поставщиках;
- Вывод поставщиков, отгрузивших определенный товар;
- Изменение информации о товарах/поставщиках;
- Вывод информации о поставках по
определенной дате/поставщику/товару и т.д.
1.5 Выводы по разделу
В данном разделе рассмотрена предметная область базы данных, определены необходимые таблицы, поля и запросы. В качестве СУБД для реализации базы данных планируется использоваться СУБД реляционного типа - MS SQL Server.
2. Моделирование предметной области
.1 Общие сведения
В основе проектирования лежит моделирование предметной области (МПО). Предварительное моделирование предметной области позволяет сократить время и сроки проведения проектировочных работ и получить эффективный и качественный проект.
К МПО предъявляются следующие требования:
· формализация, обеспечивающая однозначное описание структуры предметной области;
· понятность для заказчиков и разработчиков на основе применения графических средств отображения модели;
· реализуемость, подразумевающая наличие средств физической реализации модели предметной области в ИС;
· обеспечение оценки эффективности реализации модели предметной области на основе определенных методов и вычисляемых показателей.
Для реализации перечисленных требований, как правило, строится инфологическая модель, которая отражает структурный и оценочный аспекты функционирования предметной области.
2.2 Выделение сущностей, атрибутов, ключей, связей
Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты)[2].
Сущность - любой объект, событие или концепция, имеющие существенное значение для предметной области, и информация о которых должна сохраняться.
В разрабатываемой базе данных можно выделить 4 сущности: Товар, Склад, Поставщик и Поставка.
Атрибут - любая характеристика сущности, значимая для рассматриваемой предметной области. Атрибут предназначен для квалификации, идентификации, классификации, количественной характеристики или выражения состояния сущности.
Первичный ключ (Primary Key) - это атрибут или группа атрибутов, однозначно идентифицирующих экземпляр сущности. На диаграмме первичные ключи размещаются выше горизонтальной линии. Ключ может быть сложным, т.е. состоять из нескольких атрибутов.
Внешние ключи (Foreign Key) создаются автоматически, когда сущности соединяются связью (миграция ключа). Связи между таблицами реляционной БД представляются одинаковыми ключами в таблицах (внешними ключами).
Сущности, их атрибуты, ключи и связи
проектируемой базы данных представлены в таблице 2.
Таблица 2 - Сущности и атрибуты БД «Канцтовары»
|
Сущность |
Обозначе-ние |
Атрибут |
Значение атрибута |
Тип данных |
Ключ |
|
Товар |
Tovar |
InN Naz Cena |
Код товара Название Цена |
Integer Text Money |
PK |
|
Склад |
Sklad |
InN Kol_vo |
Код товара Количество товара |
Integer Integer |
FK(Товар) |
|
Поставщик |
Postavschik |
ID Nazvanie Telefon |
Код поставщика Название орг. Контактный телефон |
Integer Text Integer |
PK |
|
Поставка |
Postavka |
Data Kolich InN ID |
Дата поставки Количество товара Код товара Код поставщика |
Date Integer Integer Integer |
FK(Товар) FK(Поставщик) |
2.3 Проектирование диаграммы сущность-связь в EA
Ранее были выделены следующие сущности:
- сущность «Товар»;
- сущность «Склад»;
- сущность «Поставщик»;
- сущность «Поставка».
Связь - это ассоциация, установленная между несколькими сущностями.
Набор связей - это отношение между n (причем n не меньше 2) сущностями, каждая из которых относится к некоторому набору сущностей.
В случае n=2, т.е. когда связь объединяет две сущности, она называется бинарной.
То число сущностей, которое может быть ассоциировано через набор связей с другой сущностью, называют степенью связи. Рассмотрение степеней особенно полезно для бинарных связей. Могут существовать следующие степени бинарных связей:
- Один к одному (обозначается 1 : 1 );
- Один ко многим ( 1 : n );
- Много к одному (n : 1 );
- Многие ко многим (n : n).
В базе данных канцелярских товаров сущности будут соединены связями со степенью Один к одному (обозначается 1 : 1 ) и Один ко многим ( 1 : n ).
Схема базы данных представлена в приложении А.
2.4 Создание БД в MS SQL SERVER. Перенос схемы из EA
Для создания базы данных необходимо запустить Microsoft SQL Server Management Studio, выбрать нужный сервер для хранения базы.В обозревателе объектов (Object Explorer) в дереве сервера выбирать пункт "Databases" и в контекстном меню выбрать пункт "New Database...".
В итоге данного этапа были созданы следующие данные:
Название сервера - Саша-HP;
Название БД - KanzTov.
2.5 Создание диаграммы средствами MS SQL SERVER и MS SQL SERVER Management Studio
Прежде чем создать диаграмму в MS SQL SERVER необходимо создать таблицы. Для создания таблиц необходимо выбрать в контекстном меню ветки «Таблицы» пункт «Создать таблицу».
Для определения связей между таблицами необходимо задать первичные ключи таблиц. Для этого в контекстном меню сответствующего поля выбрать пункт «Задать первичный ключ» . Для создания связей между таблицами и схемы базы данных необходимо создать новую диаграмму базы данных, выбрав соответствующий пункт в контекстном меню ветви «Диаграммы баз данных».
Диаграмма, созданная для БД Канцелярские товары, представлена в приложении А. [13]
2.6 Начальное заполнение БД
После создания структуры базы данных необходимо заполнить данными созданные таблицы. Для заполнения таблиц необходимо использовать запрос с оператором INSERT, который позволяет добавить строки в таблицу, заполняя их значениями.
Пример заполнения таблиц данными представлен
ниже в разделе 3.
2.7 Выводы по разделу
В данном разделе были определены сущности, атрибуты, ключи и связи создаваемой базы данных, спроектирована диаграмма сущность-связь. Изучено создание диаграммы средствами MS SQL SERVER и MS SQL SERVER Management Studio. Было произведено начальное заполнение БД.
3. Создание и запуск базовых запросов SQL
.1 Общие сведения
Запросы служат для извлечения данных из таблиц и предоставления их пользователю в удобном виде. С помощью запросов выполняются такие операции как отбор данных, их сортировка и фильтрация. С помощью запросов можно выполнять преобразования данных по заданному алгоритму, создавать новые таблицы, выполнять автоматическое наполнение таблиц данными, импортированными из других источников, выполнять простейшие вычисления в таблицах и многое другое. Особенность запросов состоит в том, что они черпают данные из базовых таблиц и создают на их основе временную результирующую таблицу. Если хотят подчеркнуть факт «временности» этой таблицы, то ее еще называют моментальным снимком [3].
В данной курсовой работе предлагается создать
несколько запросов: запросы на выборку, запросы с использованием диалогового
окна для ввода условия, запросы с постоянно заданным условием.
3.2 Запросы (+контрольная работа 1)
А) Запросы на заполнение таблиц (Insert):
INSERT - оператор языка SQL, который позволяет добавить строки в таблицу, заполняя их значениями.
Синтаксис: INSERT INTO <название таблицы> ([<Имя столбца>, ... ]) VALUES (<Значение>,...)[4].
Рисунок 1 - Листинг запросов с оператором Insert
Б) Запросы на выборку (Select):
SELECT - оператор языка SQL,
возвращающий набор данных (выборку) из базы данных, удовлетворяющих заданному
условию.[4]
Рисунок 2 - Листинг запросов с
оператором Select
Рисунок 3 - Листинг запроса
После выполнения данного запроса на
экране должны быть выведены названия и цены всех тетрадей.
Рисунок 4 - Листинг запроса
После выполнения данного запроса на
экране будут выведены данные о поставках за ноябрь 2013 года.
Рисунок 5 - Листинг запроса
После выполнения данного запроса на экране будут выведены данные о поставщике номер контактного телефона - 403910.
В) Запросы на обновление данных (Update):
UPDATE - оператор языка SQL, позволяющий
обновить значения в заданных столбцах таблицы.[4]
Рисунок 6 - Листинг запроса
После выполнения данного запроса
цена на все тетради будет повышена на 1 рубль.
Рисунок 7 - Листинг запроса
После выполнения данного запроса
контактный телефон у поставщика с указанным названием будет изменен.
Рисунок 8 - Листинг запроса
После выполнения данного запроса к количеству товаров повставленным в декабре прибавляется по 10 товаров.
Г) Запросы на удаление данных (Delete):
DELETE -операция удаления записей из таблицы.
Рисунок 9 - Листинг запроса
После выполнения данного запроса
будут удалены данные о поставках, которые были совершены до 2014 года.
Рисунок 10 - Листинг запроса
После выполнения данного запроса
будет удален товар с кодом= 4.
Рисунок 11 - Листинг запроса
После выполнения данного запроса будет удален поставщик с кодом = 4.