Обоснование концептуальной модели базы данных Выполнение нормализации базы данных Конструирование таблиц базы данных и заполнение полей рис Создание базы данных



Download 0,92 Mb.
bet1/3
Sana25.05.2023
Hajmi0,92 Mb.
#943589
TuriОтчет
  1   2   3
Bog'liq
бд Торговая компания вар 19





Содержание



Введение 2
1. Обоснование концептуальной модели базы данных 4
2. Выполнение нормализации базы данных 6
3. Конструирование таблиц базы данных и заполнение полей 8
Рис 2 - Создание базы данных 11
4. Оформление схемы данных 12
5. Конструирование запросов к базе данных 13
6. Разработка форм базы данных 19
7. Разработка отчета 21
Заключение 22
Список использованных источников. 23



Введение


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


Одной из основополагающих частей информационных систем является база данных, в которой накапливается информация. В настоящее время рынок систем управления базами данных (СУБД) весьма велик, существуют решения разной степени распределенности, вычислительной мощности, адаптированности к разным платформам. Наиболее распространенными на сегодняшний день являются такие СУБД как MySQL, PostgreSQL, MS SQL Server, SQLite, Oracle Database, Firebird.
В данной работе будут смоделированы основные этапы создании базы данных торговой компании: описание предметной области, создание концептуальной и логической модели, физическое проектирование базы данных, наполнение тестовыми данными, разработка основных запросов к базе данных.
В качестве СУБД в работе используется MS SQL Server 2008, который при невысоких аппаратных требованиях обладает значительной вычислительной мощностью, позволяющей строить на его основе распределенные информационные системы с большой нагрузкой. Также MS SQL Server 2008 обладает всеми средствами для создания и обеспечения работоспособности базы данных, поддерживает визуальную технологию создания объектов базы данных, стандарт языка SQL.
В данной работе будет рассматриваться модель «Торговая компания», которая должна содержать информацию о товарах, магазинах, поставщиках, покупателях. Также должны быть реализованы запросы:
- получить список всех товаров, продаваемых в заданном магазине;
- получить список товаров, поставщик которых находится в том же городе, что и магазин, их продающий;
- получить список всех потребителей, купивших товары стоимостью не больше заданной;
- получить список поставщиков, которые поставили заданный товар в магазин с заданным адресом;
- получить пары (номер товара, название поставщика), продаваемых через магазины, в которых обслуживается заданный потребитель;
- получить список пар (магазин, адрес), в которых продается заданный товар от заданного поставщика.
1. Обоснование концептуальной модели базы данных
Обоснование концептуальной модели базы данных для данной задачи заключается в определении сущностей, связей между ними и их атрибутов, которые позволят хранить всю необходимую информацию о товарах, магазинах, поставщиках и покупателях, а также выполнять запросы к базе данных, соответствующие требованиям задания.
В данной концептуальной модели базы данных были выделены четыре основные сущности: товары, магазины, поставщики и покупатели, которые описывают основные объекты, с которыми работает торговая компания. Каждая из этих сущностей имеет свои атрибуты, которые позволяют хранить информацию о них.
Для связей между сущностями были использованы связи многие-ко-многим, так как каждый магазин может продавать несколько товаров, каждый поставщик может поставлять несколько товаров, а каждый покупатель может купить несколько товаров. Также была использована связь один-ко-многим между магазинами и поставщиками, так как каждый магазин может иметь несколько поставщиков, но каждый поставщик может поставлять товары только в один магазин.
Для выполнения запросов к базе данных были предложены соответствующие запросы на языке SQL, которые позволяют получать необходимую информацию о товарах, магазинах, поставщиках и покупателях в соответствии с требованиями задания.

Таблица 1 - Спецификация сущностей



Название сущности

Атрибуты сущности

Товары

id_tovar (идентификатор товара), название (название товара), стоимость (стоимость товара)

Магазины

id_mag (идентификатор магазина), название (название магазина), адрес (адрес магазина), город (город, в котором находится магазин)

Поставщики

id_post (идентификатор поставщика), название (название поставщика), адрес (адрес поставщика), город (город, в котором находится поставщик)

Покупатели

id_pok (идентификатор покупателя), имя (имя покупателя), фамилия (фамилия покупателя), адрес (адрес покупателя), город (город, в котором находится покупатель), сумма_покупок (общая сумма покупок покупателя)

Каждая из этих сущностей имеет свои атрибуты, которые описывают ее характеристики. Например, для сущности "Товары" это идентификатор товара, название товара и стоимость товара. Для сущности "Магазины" это идентификатор магазина, название магазина, адрес магазина и город, в котором он находится. Для сущности "Поставщики" это идентификатор поставщика, название поставщика, адрес поставщика и город, в котором он находится. Для сущности "Покупатели" это идентификатор покупателя, имя покупателя, фамилия покупателя, адрес покупателя, город, в котором он находится, и общая сумма покупок покупателя.


Графически диаграмма Er-модели показана на рисунке 1

Рисунок 1- Типы связей между сущностями

2. Выполнение нормализации базы данных


Нормализация базы данных — это важный шаг в проектировании баз данных, который позволяет избежать избыточности данных, увеличения объема хранимых данных и упрощает процесс управления данными.
Процесс нормализации базы данных происходит поэтапно и включает в себя несколько нормальных форм (1НФ, 2НФ и 3НФ). Первая нормальная форма (1НФ) гарантирует, что все атрибуты таблицы содержат только простые значения, то есть каждая ячейка таблицы содержит только одно значение. Вторая нормальная форма (2НФ) гарантирует, что каждая запись в таблице связана с единственным ключом, и все остальные атрибуты зависят только от этого ключа. Третья нормальная форма (3НФ) гарантирует, что каждый атрибут таблицы зависит только от ключа и не зависит от других атрибутов таблицы.
Для выполнения нормализации базы данных необходимо провести анализ связей между сущностями и их атрибутами, выделить основные функциональные зависимости и разделить таблицы на отдельные таблицы таким образом, чтобы каждая таблица отвечала только за одну конкретную сущность и ее атрибуты. Для этого можно использовать методы нормализации, такие как устранение повторяющихся групп атрибутов, разделение атрибутов на отдельные таблицы и т.д.
После выполнения нормализации базы данных необходимо установить связи между таблицами и определить тип связей (один к одному, один ко многим или многие ко многим). Для этого можно использовать внешние ключи, которые связывают таблицы по определенным правилам и обеспечивают целостность данных.
Важно отметить, что нормализация базы данных является процессом, который может занять значительное время, особенно для больших баз данных. Однако, хорошо спроектированная база данных, выполненная в соответствии с требованиями нормализации, может значительно упростить процесс управления данными и обеспечить более эффективный доступ к ним.
Для данной курсовой работы с заданием на модель "Торговая компания", выполнение нормализации базы данных позволит сделать ее более структурированной и уменьшить избыточность данных, что приведет к более эффективному хранению и управлению информацией.
На первом этапе нормализации базы данных нужно выделить основные сущности, связи между ними и их атрибуты. Например, сущности "Товары", "Магазины", "Поставщики" и "Покупатели" могут быть выделены в качестве основных сущностей в базе данных. Затем следует проанализировать зависимости между атрибутами каждой сущности и выделить функциональные зависимости.
На втором этапе нужно выполнить разделение таблиц на отдельные таблицы, чтобы каждая таблица отвечала только за одну сущность и ее атрибуты. Например, для сущности "Товары" можно создать таблицу "Товары", которая будет содержать информацию о каждом товаре, его названии, описании и т.д. Для сущности "Магазины" можно создать таблицу "Магазины", которая будет содержать информацию о каждом магазине, его адресе, контактной информации и т.д. Для сущности "Поставщики" можно создать таблицу "Поставщики", которая будет содержать информацию о каждом поставщике, его контактной информации и т.д. Для сущности "Покупатели" можно создать таблицу "Покупатели", которая будет содержать информацию о каждом покупателе, его контактной информации и т.д.
На третьем этапе нужно установить связи между таблицами и определить тип связей (один к одному, один ко многим или многие ко многим). Например, можно установить связь между таблицей "Товары" и таблицей "Магазины" посредством внешнего ключа, который будет указывать на магазин, в котором данный товар продается. Аналогично, можно установить связь между таблицей "Товары" и таблицей "Поставщики" посредством внешнего ключа, который будет указывать на поставщика, который поставляет данный товар.
Таким образом, выполнение нормализации базы данных для данной курсовой работы позволит упростить процесс управления данными, обеспечить целостность данных и более эффективный доступ.

3. Конструирование таблиц базы данных и заполнение полей


После выполнения процесса нормализации базы данных необходимо приступить к конструированию таблиц и заполнению их полей. На основании спецификации сущностей, указанных в таблице 1, можно составить спецификации для всех таблиц базы данных, необходимых для работы системы "Торговая компания". Ниже приведены спецификации таблиц для каждой из сущностей:
Таблица "Items" (Товары):

  • item_id (идентификатор товара, целое число)

  • item_name (название товара, строка)

  • item_price (цена товара, вещественное число)

  • item_description (описание товара, строка)

Таблица 1: Спецификация таблицы "Items"



Имя поля

Тип данных

Свойства поля

item_id

int

Primary Key, Not Null, Unique

item_name

varchar

Not Null

item_category

varchar

Not Null

item_price

decimal

Not Null

Таблица "Vendors" (Поставщики):



  • vendor_id (идентификатор поставщика, целое число)

  • vendor_name (название поставщика, строка)

  • vendor_address (адрес поставщика, строка)

  • vendor_phone (контактный телефон поставщика, строка)

Таблица 2: Спецификация таблицы "Vendors"



Имя поля

Тип данных

Свойства поля

vendor_id

int

Primary Key, Not Null, Unique

vendor_name

varchar

Not Null

vendor_address

varchar

Not Null

vendor_city

varchar

Not Null

Таблица "Customers" (Покупатели):



  • customer_id (идентификатор покупателя, целое число)

  • customer_name (имя покупателя, строка)

  • customer_email (адрес электронной почты покупателя, строка)

  • customer_phone (контактный телефон покупателя, строка)

Таблица 3: Спецификация таблицы "Customers"

Имя поля

Тип данных

Свойства поля

customer_id

int

Primary Key, Not Null, Unique

customer_name

varchar

Not Null

customer_address

varchar

Not Null

customer_city

varchar

Not Null

Таблица "Shops" (Магазины):



  • shop_id (идентификатор магазина, целое число)

  • shop_name (название магазина, строка)

  • shop_address (адрес магазина, строка)

  • shop_phone (контактный телефон магазина, строка)

Таблица 4: Спецификация таблицы "Shops"



Имя поля

Тип данных

Свойства поля

shop_id

int

Primary Key, Not Null, Unique

shop_name

varchar

Not Null

shop_address

varchar

Not Null

shop_city

varchar

Not Null

Таблица "Movements" (Поставки-продажи):



  • movement_id (идентификатор поставки-продажи, целое число)

  • item_id (идентификатор товара, целое число)

  • vendor_id (идентификатор поставщика, целое число)

  • shop_id (идентификатор магазина, целое число)

  • customer_id (идентификатор покупателя, целое число)

  • movement_date (дата поставки-продажи, дата)

  • movement_type (тип поставки-продажи, строка)

  • movement_quantity (количество товара в поставке-продаже, целое число)

  • movement_price (цена товара в поставке-продаже, вещественное число)

Следует отметить, что поля таблицы "Movements" включают в себя внешние ключи на таблицы "Items", "Vendors", "Shops" и "Customers", которые связывают записи в таблице "Movements" с соответствующими записями в таблицах "Items", "Vendors", "Shops" и "Customers".

Таблица 5: Спецификация таблицы "Movements"



Имя поля

Тип данных

Свойства поля

movement_id

int

Primary Key, Not Null, Unique

movement_type

varchar

Not Null

movement_date

datetime

Not Null

movement_quantity

int

Not Null

item_id

int

Foreign Key, Not Null, References "Items"

vendor_id

int

Foreign Key, Not Null, References "Vendors"

shop_id

int

Foreign Key, Not Null, References "Shops"

customer_id

int

Foreign Key, References "Customers"

Создание базы данных




Download 0,92 Mb.

Do'stlaringiz bilan baham:
  1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish