Федеральное агентство по образованию
ГОУ ВПО Московский государственный открытый университет
Чебоксарский институт (филиал)
Кафедра управления и информатики в технических системах
Курсовой проект
по дисциплине
«Информационное обеспечение систем управления»
Тема: «Магазин продуктов»
Выполнила студентка:
Иванова Мария Николаевна
Специальность: 220201
Ф/о заочная, курс 5
Учебный шифр:
Руководитель:
2009 г.
Оглавление
Введение
Инфологическая модель базы данных
Логическая модель базы данных
Физическаямодельбазыданных
Разработка запросов, процедур, триггеров
Заключение
Список использованной литературы
За последние 30 лет в области теории систем баз данных была проведен ряд исключительно продуктивных исследований. Полученные результаты вполне можно считать наиболее важным достижением информатики за этот период. Базы данных стали основой информационных систем и в корне изменили методы работы многих организаций. В частности, в последние годы развитие технологии баз данных привело к созданию весьма мощных и удобных в эксплуатации систем. Благодаря этому системы баз данных стали доступными широкому кругу пользователей. Но, к сожалению, кажущаяся простота таких систем способствовала тому, что пользователи стали самостоятельно создавать базы данных и приложения, не имея достаточных знаний о методах проектирования эффективно работающих систем, что часто приводило к непроизводительным затратам ресурсов и некачественным результатам. Вызванная этим неудовлетворенность пользователей стала причиной возникновения известного "кризиса программного обеспечения", или так называемой "депрессии программного обеспечения", последствия которой не устранены и поныне.
Реляционная база данных – это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Пользователи воспринимают такую базу данных как совокупность таблиц, связанных между собой.
Основными задачами системы SQL Server являются: организация одновременного доступа к данным большого количества пользователей; манипуляция информацией, хранимой в БД и др.
SQL Server поддерживает реляционную модель данных и выполняет функции создания объектов БД (таблиц, индексов, представлений и т.д.), осуществляет проверку целостности БД и отвечает за безопасность данных в системе.
Доступ пользователя к данным обычно осуществляется с компьютера рабочей станции. При этом создаются соответствующие приложения (например, в средах Visual Basic, Delphi и др.), которые позволяют выполнять операции над данными.
Задачи, связанные с администрированием БД системы SQL Server, обращение к системе удобно выполнять непосредственно с компьютера-сервера. В SQL Server для манипулирования данными используется язык Transact SQL, переработанной компанией Microsoft версией языка SQL.
Система SQL Server сохраняет создаваемые объекты в соответствующих файлах на дисках компьютера сервера. При этом для БД создаются специальные таблицы, в которых хранится информация о различных элементах базы данных: индексах, таблицах, пользователях и т.д.
Файлы БД сохраняются с расширением MDF, а системные файлы с расширением LDF.
Основные операции, связанные с управлением работой SQL сервера, осуществляются с помощью ряда утилит, входящих в состав системы: SQL Server Books Online – представляет пользователю справочную поддержку; SQL Server Query Analyzer – предоставляет пользователю возможность выполнения операторов Transact SQL в БД SQL Server; ISQL – предоставляет возможность выполнять команды Transact SQL в режиме командной строки; SQL Server Service Manager – предоставляет возможность запуска, остановки и временной приостановки работы SQL Server. Запуск данной утилиты возможен только на компьютере сервере; SQL Server Enterprise Manager – позволяет выполнять все основные операции администрирования SQL Server. Данная утилита позволяет осуществлять запуск всех утилит и приложений, входящих в состав SQL Server. Данная утилита может запускаться и на компьютере пользователя и на сервере.
Инфологическая модель базы данных
Цель инфологического моделирования – обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Поэтому инфологическую модель данных пытаются строить по аналогии с естественным языком. Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).
Рис. 1. Инфологическая модель.
Шесть сущностей находятся в третьей нормальной форме, т. е. все атрибуты сущностей содержат атомарные значения (значения в домене не являются ни списками, ни множествами простых или сложных значений); каждый неключевой атрибут полностью зависит от первичного ключа; никакой неключевой атрибут не зависит от другого неключевого атрибута.
Рис. 2. Логическая модель.
Создадим базу данных «Магазин продуктов»:
create database Magazin_Productov
Затемсоздадимтаблицы:
«Товар»
create table Tovar (codtovara int not null primary key, ekzemplar char(30) not null)
Таблица №1
Атрибуты | Тип | Длина | Ключ | Описание |
codtovara | int | 4 | primary | Код товара |
ekzemplar | char | 30 | Наименование товара |
«Поставщики»
create table Postavsiki (codpostavsika int not null primary key, firma char(20) not null)
Таблица №2
Атрибуты | Тип | Длина | Ключ | Описание |
codpostavsika | int | 4 | primary | Код поставщика |
firma | char | 20 | Наименование фирмы |
«Менеджерыпоставок»
create table Manageri_postavok (cod_meng_postav int not null primary key, familia char(20) not null, imya char(10) not null, otchestvo char(20) not null, telefon int not null)
Таблица №3
Атрибуты | Тип | Длина | Ключ | Описание |
cod_meng_postav | int | 4 | primary | Код менеджера поставок |
familia | char | 20 | Фамилия менеджера поставок | |
imya | char | 10 | Имя менеджера поставок | |
otchestvo | char | 20 | Отчество менеджера поставок | |
telefon | int | 4 | Номер телефона менеджера поставок |
«Поставкатовара»
create table Postavka_tovara (codpostavki int not null primary key, codtovara int not null references Tovar, codpostavsika int not null references Postavsiki, colich_post_tov int not null, cena_post_tov money not null, symmapostavki money not null, cod_meng_postav int not null references Manageri_postavok)
Таблица №4
Атрибуты | Тип | Длина | Ключ | Описание |
codpostavki | int | 4 | primary | Код поставки |
codtovara | int | 4 | Код товара | |
codpostavsika | int | 4 | Код поставщика | |
colich_post_tov | int | 4 | Количество поставляемого товара | |
cena_post_tov | money | 8 | Цена поставляемого товара | |
symmapostavki | money | 8 | Сумма поставки | |
cod_meng_postav | int | 4 | Код менеджера поставки |
«Продавцы»
create table Prodavci (codprodavca int not null primary key, familia char(20) not null, imya char(10) not null, otchestvo char(20) not null, telefon int not null)
Таблица №6
Атрибуты | Тип | Длина | Ключ | Описание |
codprodavca | int | 4 | primary | Код продавца |
familia | char | 20 | Фамилия продавца | |
imya | char | 10 | Имя продавца | |
otchestvo | char | 20 | Отчество продавца | |
telefon | int | 4 | Номер телефона продавца |
«Продажа товара»
create table Prodaza_tovara (cod_vibitogo_cheka int not null primary key, codtovara int not null references Tovar, colich_prod_tov int not null, cena_prod_tov money not null, dohod money not null, codprodavca int not null references Prodavci)
Таблица №7
Атрибуты | Тип | Длина | Ключ | Описание |
cod_vibitogo_cheka | int | 4 | primary | Код выбитого чека |
codtovara | int | 4 | Код товара | |
CodFirmaClient | int | 4 | Код фирмы-клиента | |
colich_prod_tov | int | 4 | Количество проданного товара | |
cena_prod_tov | money | 8 | Цена проданного товара | |
dohod | money | 8 | Доход | |
codprodavca | int | 4 | Код продавца |
Заполним таблицы следующими SQL запросами:
Таблица«Товар»
insert into Tovar values (1, 'Сыркопченый')
insert into Tovar values (2, 'Молоко')
insert into Tovar values (3, 'Творог')
insert into Tovar values (4, 'Сметана')
insert into Tovar values (5, 'Йогурт')
insert into Tovar values (6, 'Сырплавленый')
insert into Tovar values (7, 'Кефир')
insert into Tovar values (8, 'Ряженка')
insert into Tovar values (9, 'Сырроссийский')
insert into Tovar values (10, 'Снежок')
Рис. 3. Таблица «Товар».
«Поставщики»
insert into Postavsiki values (11, 'ОАО "Молоко"')
insert into Postavsiki values (12, 'ОАО "МолПрод"')
insert into Postavsiki values (13, 'ОАО "Снежинка"')
insert into Postavsiki values (14, 'ОАО "Меркурий+"')
insert into Postavsiki values (15, 'ОАО "Молочныйдом"')
Рис. 4. Таблица «Поставщики».
«Менеджеры поставок»
insert into Manageri_postavok values (21, 'Банин', 'Александр', 'Абрамович', 22431)
insert into Manageri_postavok values (22, 'Сидорова', 'Раиса', 'Николаевна', 22543)
insert into Manageri_postavok values (23, 'Викенов', 'Дмитрий', 'Александрович', 22564)