Автор работы: Пользователь скрыл имя, 22 Июня 2011 в 02:44, курсовая работа
В данном курсовом проекте была разработана база данных в MS Microsoft SQL Server 2005 для автоматизации процесса контроля поставок и продажи бытовой техники. Программа, работающая с БД, позволяет показывать информацию о товарах, о поставщиках, реализаторах и клиентах. Так же дает возможность сформировать отчеты по различным категориям.
Введение……………………………………………………………….……………3
1. Описание предметной области 5
2. Проектирование реляционной базы данных 6
2.1 Перечень атрибутов 6
3. Инфологическая модель базы данных 8
3.1 Описание связей 9
4. Даталогическое проектирование БД 10
5. Запросы к БД. 12
6. Разработка представлений для отображения результатов выборки 13
7. Проектирование хранимых процедур 14
8. Проектирование триггеров 15
9. Проектирование клиентского приложения 17
9.1 Функциональное назначение 17
9.2 Описание входных и выходных форм 17
9.3 Разработка технологий доступа к базе данных 19
9.4 Руководство пользователя 19
10. Экономическое обоснование результатов внедрения программного продукта .……………………………………………………………………..20
11.ТРЕБОВАНИЯ К ТЕХИЧЕСКОМУ ОБЕСПЕЧЕНИЮ 22
ПРИЛОЖЕНИЕ 1 25
ПРИЛОЖЕНИЕ 1 (Продолжение) 26
ПРИЛОЖЕНИЕ 2 27
Таблица 4.1.4 Склад
Наименование атрибутов | Тип полей | Размер полей | Допустимость неопределенных значений |
Id | Int | 4 | Not Null |
Наименование | Char | 20 | |
Марка | Char | 10 | |
Модель | Char | 10 | |
Цена | Smallmoney | 8 | |
id_поставщика | Int | 4 | Not Null |
Id_реализатора | Int | 4 | Not Null |
Таблица 4.1.5 Сотрудники
Наименование атрибутов | Тип полей | Размер полей | Допустимость неопределенных значений |
Id | Int | 4 | Not Null |
Фамилия | Char | 20 | |
Имя | Char | 15 | |
Отчество | Char | 20 | |
Телефон | Char | 18 | |
Адрес | Char | 20 | |
Должность | Char | 20 | |
Стаж | Int | 4 |
Одним из наиболее эффективных и универсальных способов выборки данных из таблиц базы данных является использование запросов SQL.
В разработанной базе данных предусмотрены запросы, отвечающие всем указанным требованиям, как по виду, так и по их количеству. Ниже приведены примеры некоторых запросов всех необходимых видов.
Запросы на SQL
Select наименование, марка, модель, цена from склад order by Цена
select * from Реализация where Реализация.[Дата продажи]<'10.10.2010'
SELECT * FROM Реализация WHERE [Общая цена] BETWEEN '10000' AND '30000'
select наименование, марка, модель, цена FROM склад where Наименование like 'Н%'
SELECT id, Наименование, Марка, Модель, id_поставщика, id_реализатора, цена+ цена*0.18 AS [Цнга с НДС] From Склад
Представление – это динамическая таблица, служащая для отображения результатов выборки из информации. Представления являются удобным инструментом для работы с таблицами базы данных. Разработка представлений в SQL Server 2005 осуществляется в два этапа. На первом этапе оно создается при помощи утилиты SQL Server Enterprise Manager, а затем ее запуск осуществляется при помощи утилиты SQL Server Query Analyzer.
В базе данных разработано представление «Представление», в котором отображается id_клиента, фамилия клиента, количество и наименование купленного товара, id_поставщика и общая цена товара.
Рис. 6.1 Представление
При разработке приложений, основанных на платформе «клиент - сервер», для облегчения выполнения каких-либо операций с данными используются механизмы, при помощи которых можно создавать подпрограммы, работающие на сервере и управляющие процессами обработки информации. Эти механизмы носят название хранимых процедур.
В курсовом проекте была разработана хранимая процедура, предназначенная для изменения поля «Общая цена» в таблице «Поставка» с учетом увеличения стоимости товара на 35%. Код процедуры:
CREATE PROCEDURE new as
UPDATE Поставка
set [Общая цена]=[Общая цена]*0.35
Для запуска процедуры используется команда:
exec new
SELECT*FROM Поставка
Рис. 7.1 Выполнение хранимой процедуры
Триггеры (trigger) являются особой разновидностью хранимых процедур, выполняемых автоматически при модификации данных таблицы. Триггеры находят разное применение – от проверки данных до обеспечения сложных деловых правил. Особенно полезным свойством триггеров является то, что они имеют доступ к образам записи до и после модификации; таким образом, можно сравнить две записи и принять соответствующее решение.
В данном курсовом проекте для таблицы «Поставка» был разработан триггер – trigger_4. Действие этого триггера направлено на то чтобы пользователь не мог вводить отрицательные значения в поле «Общая цена». Код триггера:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[trigger_4]
ON [dbo].[Поставка]
AFTER INSERT,UPDATE
AS
BEGIN
IF EXISTS (SELECT * FROM dbo.Поставка WHERE [Общая цена]<0)
ROLLBACK TRAN
PRINT 'Цена не может быть меньше 0'
SET NOCOUNT ON;
END
Рис.8.1 – Результат работы триггера
Пользователи могут работать с БД, используя клиентское приложение. Приложение разработано в Microsoft Visual C# 2008.
Клиентское приложение соединяется с БД, после чего получает копию данных из БД, отсоединяется от БД и пользователь работает с копией данных. Если необходимо сохранить изменения нужно это делать вручную (нажать на кнопку). Происходит соединение с БД и вносятся изменения непосредственно в БД.
Пользователем является администратор, который имеет неограниченные возможности, а именно:
Также администратор может выполнять определенную выборку данных из таблиц БД. Внутренние механизмы защиты и запросы на подтверждение критичных операций предохраняют всех пользователей от случайных ошибок в процессе работы, которые могут повлечь за собой нарушение целостности данных, и просто необдуманных действий.
В качестве входных данных выступает информация
об объектах БД т.е. записи в таблицах.
В каждой таблице присутствует первичный
ключ, отсюда следует, что на входные данные
накладывается ограничение на дублирование
значений некоторых атрибутов. Данные
в базу данных добавляет администратор
с помощью клавиатуры и экранных форм.
В качестве выходных данных выступают
экранные формы, в которых отображены
записи отношений БД.