南阳师范学院
网络数据库
课 程 设 计 报 告
题目:销售管理系统
所属系别 物理与电子工程学院
专业班级 08级通信工程3班
姓 名 销售管理系统设计组成员
指导教师 张 帅
撰写日期 20## 年 5 月
1.引言... 1
2数据库的系统设计... 1
2.1数据库的主要系统功能分析... 1
2.2数据库的主要系统功能模块分析... 1
3 数据库设计... 1
3.1 数据库需求分析... 2
3.2数据库逻辑结构设计... 2
4数据库的创建和相关分析... 3
4.1创建销售管理系统数据库(SaleManagement)... 3
4.2创建各个数据库... 4
4.3创建视图... 5
4.4创建存储过程... 5
4.5创建自定义函数... 5
4.6创建触发器... 6
5.设计总结... 6
致 谢... 6
1.引言
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前,随着信息技技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
2数据库的系统设计
2.1数据库的主要系统功能分析
系统开发的总体任务是实现销售信息的系统化、规范化和自动化。系统的功能分析是在系统开发的总体任务的基础山完成的。本销售管理系统要实现的主要功能有:
1用户管理登陆:主要完成用户信息的确定,确保只有合法的用户才能使用本系统。
2基本信息管理:主要包括销售员信息管理和产品信息管理。
3销售信息管理:主要包括每种产品的销售管理和全部的销售详细管理。
2.2数据库的主要系统功能模块分析
根据2.1的各项功能,按照结构化将本系统的功能模块详细划分如下:
1. 用户登陆模块
在登陆窗口选择销售员工部门并填入员工的ID进行登录。
2. 基本信息管理模块
(1) 销售员信息管理
可以实现查询、添加和删除功能。
(2) 产品信息管理模块
可以实现查询、添加和删除功能。。
3. 销售信息管理模块
(1)每种产品的销售管理
可以实现查询、添加和删除功能。
(2)全部产品的销售详细管理
可以实现查询、添加和删除功能。
3 数据库设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接影响应用系统的效率以及实现的效果。合理的数据库结构可以提高数据存储的效率,可以确保数据的完整性和一致性。
1
设计数据库系统时应该首先了解用户各个方面的需求,包括现有的以及将来可能增加的需要。数据库设计主要包括下面两部分:
1.数据库需求分析
2.数据库逻辑结构设计
3.1 数据库需求分析
用户的需求具体体现在各种信息的提供、保存、更新和查询方面,要尽一切办法满足客户的需求。通过对销售管理系统的内容和数据流程的分析,设计如下数据项和数据结构:
1.部门信息:包括部门的名称。
2.销售员工信息:包括销售员工ID、销售员工所属部门、销售员工姓名、年龄。
3.产品信息:包括产品ID、编号、产品类型、产品名称、产品价格、产品的出售模式(箱/包)。
4.每种销售产品信息:包括销售产品的ID、销售产品的型号、销售员工的ID、销售日期、销售的数量。
5.销售产品的全部详细信息:包括销售的ID、部分销售产品ID、销售产品的ID、销售的出售模式(箱/包)、销售的数量、销售产品价格、销售的总金额。
3.2数据库逻辑结构设计
根据数据库的需求分析和概念结构设计数据库的名称为:SaleManagement ,数据库有下面几个主要表构成,具体设计结果如下所示:
表1 部门信息表(Dept)
表2 销售员信息表(Employee)
表3 产品信息表(Product)
表4 单个产品销售信息表(SaleForm)
2
表5 全部销售信息详表(SaleFormDetai)
4数据库的创建和相关分析
下面分别创建数据库、表、视图、存储过程、触法器、用户自定义函数的SQL脚本。
4.1创建销售管理系统数据库(SaleManagement)
create Database Student
on primary
(name=StdData1,
filename='d:\data\student1.mdf',
size=5MB,
maxsize=30MB,
filegrowth=5%),
(name=StdData2,
filename='d:\data\student2.ndf',
size=1MB,
maxsize=10MB,
filegrowth=1MB),
(name=StdLog1,
filename='d:\data\StdLog1.ldf',
size=1MB,
maxsize=5MB,filegrowth=1MB)
3
4.2创建各个数据库
4.2.1 创建Dept 表
USE [SaleManagement]
GO
create table dept
(
deptname nvarchar (10) Primary key,
)
4.2.2 创建Employee表
USE [SaleManagement]
GO
create table employee
(
employeeid int Primary key,
deptname nvarchar (10),
name nvarchar (10),
age int ,
)
4.2.3 创建Product表
USE [SaleManagement]
GO
create table Product
(
ProductID int primary key,
ProductNo nvarchar(20) ,
ProductType nvarchar(20),
ProductName nvarchar(50),
Price money,
Unit nvarchar(5),
)
4.2.4 创建SaleForm表
USE [SaleManagement]
GO
create table SaleForm
(
saleFormID int primary key,
SaleFormNo nvarchar(20),
EmployeeID int,
SaleDate datetime,
Amount money,
) 4
4.2.5 创建SaleFormDetail表
USE [SaleManagement]
GO
create table SaleFormDetail
(
SaleFormDetailID int primary key,
SaleFormID int,
ProductID int,
Unit nvarchar(10),
Quantity real,
Price money,
Total money,
)
4.3创建视图
按照部门查看销售总额视图(对表SaleForm)
USE [SaleManagement]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE VIEW [dbo].[按部门查看销售总额]
AS
SELECT TOP 100 PERCENT dbo.Employee.DeptName AS 部门名称,
SUM(dbo.SaleForm.Amount) AS 销售额
FROM dbo.Dept INNER JOIN
dbo.Employee ON dbo.Dept.DeptName = dbo.Employee.DeptName INNER JOIN
dbo.SaleForm ON dbo.Employee.EmployeeID = dbo.SaleForm.EmployeeID
GROUP BY dbo.Employee.DeptName
ORDER BY SUM(dbo.SaleForm.Amount) DESC
4.4创建存储过程
为NewProduct 创建插入新数据存储过程(对表Product)
USE [SaleManagement]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[InsertNewProduct]
(@ProductNo_1 [nvarchar](20),
@ProductName_2 [nvarchar](50),
@Price_3 [money],
@Unit_4 [nvarchar](5)) 5
AS INSERT INTO [SaleManagement].[dbo].[Product]
( [ProductNo],
[ProductName],
[Price],
[Unit])
VALUES
( @ProductNo_1, @ProductName_2, @Price_3,
@Unit_4)
4.5创建自定义函数
本数据库中不存在自定义函数
4.6创建触发器
本数据库中不存在触发器
5.设计总结
本设计中,分工明确,大家都认真完成。但做完之后整体回想一下,其事每一个板块都有很大的联系。假如我们设计一个网站或者是软件,我们进行的步骤是:系统设计分析(功能分析和模块分析)-à数据库设计(数据库需求分析和逻辑结构分析)—>然后进行数据库创建。这上面的步骤是前提,当然在做整个系统的时候首先要建立起数据库,然后在创建的页面上进行敲写相关的代码,在这写的其中,当需要视图、自定义函数、游标、触发器、存储过程等的时候才建立,并不是提前建立好的。当然在这个销售管理系统的数据库分析的时候,我们并不需要管这些,只用分析某一部分的功能,但是当我们看到这个数据库中的相关内容的时候,首先要在脑子里形成出这个系统的大致模块和功能,即,我在上面写的本系统的功能模块分析和有关的需求分析。在分析这个系统中才开始感觉比较难,因为以前不分析数据库,是直接做整个项目,这次把我的思维顺序打乱了,才开始头很懵,不知所措。后来就是按这种方法打开数据库认真的看看数据库的构造,对每一个板块进行分析。做完之后想想并不难。
致谢
本次网络数据库课程设计是在张帅老师的亲切关怀和悉心指导下,以及我们一组成员(马艾宽(组长,学号:10006520648)、刘明鹏(学号:10006520604)、卢振岳(10006520630)、禹彭(10006520638)、彭真真(10006520605)、张萍萍(10006520647)、杜楠(10006520602) 六位同学)的团结合作下完成的。我们大家加深了了解,加深了同学之间的感情,感谢老师您给我们创造这个相互学习和交往的机会。 6
第二篇:数据库的设计
数据库的设计
一、需求分析
1.1 背景
全校性选修课开设的目的在于扩大学生的知识面、加强学生素质教育、培养复合型高级人才,具有不可替代的重要性。随着教育改革的不断深入和素质教育的加强,学分制的实施,选修课在一个学生的培养计划中占的比重将越来越大。
网上选课系统的出现使同学们能够更加自主、便捷、准确的进行选课。但是,由于一般高校中的学生都比较多,因此带来了诸多如信息管理等问题,鉴于需要将学生信息、选课信息等信息数字化以便于管理维护,我们便想到了利用数据库能够比较良好地解决此类问题,由此下面我将设计出一个高校选课系统以供参考。
1.2 概要分析
根据1.2节中所描述的系统分析要求,我们的高校选课系统将包含学生、教师、管理员等实体,学生可以在规定的时间内选课、退选和成绩查询等操作;教师可以查看学生的相关信息,录入学生成绩等操作;管理员可以添加管理员,管理教师、学生等信息。
1.3 开发技术
开发工具:Microsoft SQL Server 2000
开发语言:SQL
开发技术:数据库开发技术
面向对象:需求者
SQL Server 20## 是Microsoft 公司推出的SQL Server 数据库管理系统,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows XP 的大型多处理器的服务器等多种平台使用。本实验中最终将使用Microsoft SQL Server 2000数据库管理系统将我们设计的数据库实现。
二、概念设计
2.1处理对象
在我们的数据库系统中共有4个实体:学生、教师、成绩、课程。
(1)学生的属性:学号、姓名、年龄、班级号、宿舍
(2)教师的属性:教师号、姓名、年龄、所在系、学历
(3)课程的属性:课程代码、课程名称、学分
(4)成绩属性:课程成绩
2.2 E-R图
然后,将实体之间联系表示出来,画出数据库系统的E-R图,如图3-7所示:
图2-3 数据库系统E-R图
2.3逻辑关系表
以下是根据要求建立的三个表。分别为student,teacher,和course。
2.3.1 student
2.3.1 student
teacher表
course表
三、查询场景
SELECT * FROM student
WHERE Sage >= 19
SELECT * FROM teacher
WHERE Tage >= 38 and Tdegree='博士'
SELECT * FROM course
WHERE Ccredit >=3