Автор работы: Пользователь скрыл имя, 25 Ноября 2011 в 10:34, курсовая работа
Основанием для разработки послужило задание на курсовое проектирование по дисциплине «Базы данных и управление ими».
Цель: создание подсистемы, которая предназначена для ознакомления граждан с товарами и услугами, а также для их заказа.
Данная база данных предназначена для организаций, как в ознакомительных целях, так и в целях заказа на приобретение товаров и услуг.
Основной задачей базы данных является подготовка информации по товарам и услугам для клиентов.
Тип услуг | числовой |
Номер заказа | текстовый |
Дата заказа | дата/время |
Дата окончания | дата/время |
Объем заказа | числовой |
Организация | текстовый |
Таблица 9. Атрибуты сущности «Поступление услуг»
Тип услуг | числовой |
Номер поступления услуг | числовой |
Дата поступления услуг | дата/время |
Объем поступления услуг | числовой |
Дата окончания | дата/время |
Организация | текстовый |
3. Даталогическая модель.
3.1. Функциональные зависимости базы данных
Для
удобства при составлении и
Ф. И. О - fio ,
Адрес - adr ,
Телефон - tel,
Факс - fac,
ИНН - inn,
Ф.И.О сотрудников - fios,
Адреса сотрудников - аdrs,
Телефоны сотрудников - tels,
Страховое свидетельство - ctcv,
ИНН сотрудников - inns,
Организация - org,
Номер заказа - nomer,
Товар - tov,
Объем заказа - obm,
Дата заказа - datz,
Дата окончания заказа - dato,
Организация - org,
Наименование товара - naim,
Цена товара - cena,
Наличие товара - nal,
Код товара - kd,
Наименование услуг - naimy,
Стоимость услуг - ctoimy,
Способ оплаты - spop,
Код услуги - ky,
Тип услуг - naimz,
Номер заказа - nomerz,
Дата заказа - dataz,
Дата окончания заказа - datao,
Объем заказа - obmz,
Организация - org,
Накладные - nakl,
Дата поступления -datp,
Количество - kol,
Товар - tovar,
Организация - org,
Тип услуги- naimp,
Дата поступления услуг - datap,
Объем поступления услуг - obmp,
Номер поступления услуг - nomp,
Дата окончания – datok,
Организация - org;
Функциональные зависимости:
inn-> adr, tel, fac, fio;
fios-> adrs, tels, pasd, ctcv, inns, org;
kd-> cena, nal, naim;
nakl-> datp, kol, tovar, org;
nomer-> tov, obm, datz, dato,org;
ky-> ctoimy, spop, naimy;
nomerz-> naimz , dataz, datao, obmz, org;
niamp-> datap, obmp, nomp,
datok,org.
3.2. Построение редуцированного минимального
кольцевого покрытия
Данные вводимые в программу :
inn-> adr, tel, fac, fio
fios-> adrs, tels, pasd, ctcv, inns, org
kd-> cena, nal, naim
nakl-> datp, kol, tovar, org
nomer-> tov, obm, datz, dato,org
ky-> ctoimy, spop, naimy
nomerz-> naimz , dataz, datao, obmz, org
niamp-> datap, obmp, nomp, datok,org
inn, adr, tel, fac, fio->*
fios,adrs, tels, pasd, ctcv, inns, org->*
kd,cena, nal, naim->*
nakl,datp, kol, tovar, org->*
nomer,tov, obm, datz, dato,org->*
ky, ctoimy, spop, naimy->*
nomerz,naimz , dataz, datao, obmz, org->*
niamp,datap, obmp, nomp, datok,org->*
inn,adr, tel, fac, fio, fios,adrs,
tels, pasd, ctcv, inns, org, kd,cena, nal, naim, nakl,datp, kol, tovar,
org, nomer,tov, obm, datz, dato,org, ky, ctoimy, spop, naimy, nomerz,naimz
, dataz, datao, obmz, org, niamp,datap, obmp, nomp, datok,org->*
Минимальное редуцированное
кольцевое покрытие
C
( inn; ) -> fio, adr, tel fac, *
( fios; ) -> adrs, tels, pasd, ctcv, inns, org ,*
( kd; ) -> cena, nal, naim, *
( nakl; ) -> datp, kol, tovar, org, *
( nomer; ) -> tov, obm, datz, dato, org,*
( ky; ) -> ctoimy, spop, naimy, *
( nomerz; ) -> naimz, dataz, datao, obmz, *
( niamp;
) -> datap, obmp, nomp, datok ,*
Естественное
характеристическое множество
f(C):
inn-> adr, tel, fac, fio
fios-> adrs, tels, pasd, ctcv, inns, org
kd-> cena, nal, naim
nakl-> datp, kol, tovar, org
nomer-> tov, obm, datz, dato,org
ky-> ctoimy, spop, naimy
nomerz-> naimz , dataz, datao, obmz, org
niamp->
datap, obmp, nomp, datok,org
R0 = ( fio; adr; tel, fac, inn, * ) K0 = { inn }
R1 = ( fios, adrs, tels, pasd, ctcv, inns,org, * ) K1 = { fios }
R2 = ( nomer, tov, obm, datz, dato, org, * ) K2 = { nomer }
R3 = ( naim, cena, nal, kd, * ) K3 = { kd }
R4 = ( naimy, ctoimy, spop, ky, * ) K4 = { ky }
R5 = ( naimz; nomerz, dataz, datao, obmz, org, * ) K5 = { nomerz }
R6 = ( nakl, datp, kol, tovar, org, * ) K6 = { nakl }
R7 = ( niamp; nomp, datap, obmp, datok ,org *) K7 = { niamp }
R― полученные таблицы;
K― ключи.
3.4. ER-диаграмма на основе полученных данных
Ниже на рисунке представлена ER-диаграмма, полученная на основании данных минимального редуцирования кольцевого покрытия (Рисунок 2).
Рисунок
2. ER-Диаграмма2
4. Физическая модель
4.1. Таблицы базы данных
Таблицы ― это основные объекты любой базы данных. В них хранятся, как и все данные, имеющиеся в базе, так и структура базы (поля, их типы и свойства). Данная БД, разработанная в Microsoft Access, будут хранить сведения о товарах (цена, наличие товара, наименование товара), об организации (название, телефон, адрес, факс, ИНН ), данные о сотрудниках (ФИО Сотрудника, Адрес сотрудника, Телефон Сотрудника, Паспортные данные, Страховое свидетельство, ИНН, Организация в которой он работает) и т.д.
Таблица БД создаётся в два этапа. На первом этапе определяется её структура: состав полей, их имена, тип каждого поля, его размер и другие свойства полей (Рисунок 3). На втором этапе таблица заполняется данными, т. е. формируются записи.
Рисунок 3. Структура базы данных
Каждое поле предоставляет собой столбец таблицы и содержит определенную категорию информации. Каждая запись предоставляет собой строку таблицы и содержит информацию об определенном товаре. Можно создать взаимосвязи между таблицами, вместо того, чтобы хранить всю информацию в одной большой таблице, избегая тем самым ненужного дублирования данных, экономии памяти компьютера, а также увеличение скорости и точности обработки информации.
4.2. Реляционная схема базы данных
Реляционная база данных ― это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Однако пользователи могут воспринимать такую базу данных как совокупность таблиц.
1.
Каждая таблица состоит из
однотипных строк и имеет
2. Строки имеют фиксированное число полей (столбцов) и значений (множественные поля и повторяющиеся группы недопустимы). Иначе говоря, в каждой позиции таблицы на пересечении строки и столбца всегда имеется в точности одно значение или ничего.
3.
Строки таблицы обязательно
4. Столбцам таблицы однозначно присваиваются имена, и в каждом из них размещаются однородные значения данных (даты, фамилии, целые числа или денежные суммы).
5.
Полное информационное
6.
При выполнении операций с
таблицей ее строки и столбцы
можно обрабатывать в любом
порядке безотносительно к их
информационному содержанию. Этому
способствует наличие имен
Для того чтобы составить схему данных в Access нам необходимо воспользоваться ER-диаграммой2 (Рисунок 2) и на которой определены типы наших связей. Данная диаграмма служит вспомогательной схемой для выявления ненужных сущностей и правильного определения типов связи в нашей базе данных.
Далее разработаем схему данных. (Рисунок 4) Для этого:
― нажимаем по кнопку на панели инструментов (или команда Сервис, Схема данных). На экране появится окно <<Схема данных>>;
― щёлкаем по кнопке на панели инструментов (или команда Связи, Добавить таблицу);
― в появившемся окне будет выделено название одной таблицы. Щелкаем по кнопке <Добавить>, переводим выделение на имя следующей таблицы и щелкните по кнопке <Добавить>. Аналогично добавляем оставшиеся таблицы;
― закройте окно, щелкнув по кнопке <3акрыть>;
― чтобы не выполнять все вышеописанные действия, можно просто перетащить мышкой таблицы из окна «Базы данных Таблицы» в окно «Схема данных»;
― создадим связь между таблицами Организация и Сотрудники. Для этого курсором мыши перетаскиваем <<ИНН >> в таблице Организация на поле << Организация >> в таблицу Сотрудники. На экране откроется окно <<Связи>>;
― устанавливаем флажок («галочку») в свойствах Обеспечение целостности данных, Каскадное обновление связанных полей и Каскадное удаление связанных записей;