当前位置:文档之家› 企业管理系统课程设计

企业管理系统课程设计

软件学院
课程设计报告书
课程名称数据库原理及应用课程设计
设计题目企业资产管理系统
专业班级
学号
姓名
指导教师
2016年7月
目录
1 设计时间 (3)
2 设计目的 (3)
3设计任务 (3)
4 设计内容(一级标题,黑体,三号,1.5倍行距) (4)
4.1.2信息要求分析 (4)
4.1.3处理要求分析 (4)
4.1.4安全性要求分析 (4)
4.1.5完整性要求分析 (5)
4.1.6系统功能模型分析 (5)
4.2系统设计 (13)
4.3系统实施 (19)
4.4运行与测试 (25)
5 总结与展望 (26)
参考文献 (27)
成绩评定 (28)
4.1.5完整性要求分析
通过对用户的调查分析总结出系统的完整性约束主要表现为在主键,外键的设置,非空的控制和对某些属性取值范围的控制等。

4.1.6系统功能模型分析
数据流图:
图1.企业资产管理系统顶层数据流图
图2.一层数据流图
图3.二层数据流图图4.二层数据流图
图5.二层数据流图
图6.二层数据流图
图7.二层数据流图图8.二层数据流图
资产领用数据E-R图如图所示资产调拨数据E-R图如图所示资产出租数据E-R图如图所示资产报废数据E-R图如图所示
图9.资产领用数据E-R图
图10.资产调拨数据E-R图
图11.资产出租数据E-R图
图12.资产报废数据E-R图2)总E-R图
图13.总E-R图
4.2.3 物理结构设计
基本表的结构如下:
表1.资产表(ASSET)
表2.部门表(DEPARTMET)
表3.领用表(Lingyong)
表4.调拨表(Diaobo)
表5.单位表(Unit)
表6.出租表(Rent)
表7.存放表(Cunfang)
表8.报废表(Baofei)
为系统建立四个视图,分别为资产调拨视图,资产领用视图,资产出租视图,资产报废视图。

根据对系统的分析发现当系统资产基本表中的一个资产达到报废标准进行报废后,该资产在其他表中的记录应该相应删除,为此建立三个触发器,分别来触发这一事件。

对系统的分析总结发现,应对该系统设置五类用户分别是超级用户可以对所有表和视图进行查询,修改和删除数据的操作,另外四类分别只能对所构建的四个视图进行查询,修改和删除数据的操作。

系统对四类低级用户可以授权给不同的角色,这些角色可能只对某视图具有查询,修
--7存放处表
--存放处号,经办号
CREATE TABLE Cunfang(
CNUM char(2) NOT NULL PRIMARY KEY,
CAgent char(20) NOT NULL,)
--8报废表
--资产号,存放处号,资产残值,报废原因,报废日期
CREATE TABLE Baofei(
AID char(2) NOT NULL PRIMARY KEY,
CNUM char(2) NOT NULL,
BValue float NULL,
BReason char(50) NULL,
BDate datetime NULL,
FOREIGN KEY (AID) REFERENCES ASSET(AID),
FOREIGN KEY (CNUM) REFERENCES Cunfang(CNUM),)
2.视图的实现
建立四个视图,分别为资产调拨视图,资产领用视图,资产出租视图,资产报废视图。

--资产调拨视图代码:
SELECT ASSET.AName, Diaobo.AID, Diaobo.DNUM, Diaobo.OutDNUM,
Diaobo.DDate,DEPARTMET.DAgent
FROM ASSET INNER JOIN
Diaobo ON ASSET.AID = Diaobo.AID INNER JOIN
DEPARTMET ON Diaobo.DNUM = DEPARTMET.DNUM INNER JOIN
DEPARTMET AS DEPARTMET_1 ON Diaobo.OutDNUM
=DEPARTMET_1.DNUM
图14.资产调拨视图
-资产领用视图代码
S ELECT Lingyong.AID, Lingyong.DNUM,Lingyong.LDate,
DEPARTMET.DAgent,ASSET.AName
FROM dbo.ASSET INNER JOIN
Lingyong ON ASSET.AID = Lingyong.AID INNER JOIN
DEPARTMET ON dbo.Lingyong.DNUM = DEPARTMET.DNUM
图15.资产领用视图
--资产出租视图代码
SELECT
Rent.AID,Rent.UNUM,ASSET.AName,Rent.EDate,Rent.RDate,Rent.RCost,Unit.UAgent FROM ASSET INNER JOIN
Rent ON ASSET.AID = Rent.AID INNER JOIN
Unit ON Rent.UNUM = Unit.UNUM
图16.资产出租视图
--资产报废视图代码
SELECT
Baofei.AID,UM,Baofei.BValue,Baofei.BReason,Baofei.BDate,Cunfang.CAgent,Asse t.AName
FROM ASSET INNER JOIN
Baofei ON ASSET.AID = Baofei.AID INNER JOIN
Cunfang ON UM = UM
图17.资产报废视图
3.触发器
create trigger Baofeichuli1
on Baofei
after insert
as begin
delete from Diaobo where AID=Diaobo.AID end
create trigger Baofeichuli2
on Baofei
after insert
as begin
delete from Lingyong where AID=Lingyong.AID end
create trigger Baofeichuli3
on Baofei
after insert
as begin
delete from Rent where AID=Rent.AID
end
4.3.2 数据载入
图19.部门表数据图图20.领用表数据图图21.调用表数据图
图22.单位表数据图
图24.存放表数据图
图25.报废表数据图
4.4运行与测试
4.4.1运行与测试
系统查询功能具有查询系统所有四个视图中信息的功能。

select * --资产报废视图查询from Baofei
select * --资产租用视图查询from Rent
select * --资产领用视图查询from Lingyong
select * --资产报调拨图查询
from Diaobo
4.4.2分析
在本次课程设计过程中遇到了很多SQL语句语法的问题,通过查询相关书籍资料,网站资料以及SQL Server2005帮助文档等熟悉相关语句语法的,在本次设计中首先根据设计题目构想用户的相关需求,完成了需求分析阶段的任务,清晰记录了系统要实现和解决的问题,然后通过数据库的建立,各个基本表、视图、索引、触发器等的建立完成了数据库的搭建工作。

搭建中数次对基本表和视图等内容进行改动进行优化处理。

通过对系统的建设分析,系统可以在基本数据的关系上进行更加细化的处理。

5 总结与展望
通过一学期对数据库的学习,我对数据库的知识、理念有了一定的掌握,此次课程设计正是一次对我掌握程度的检验,平时上机练习的时间不是很多,所以我在确定了自己要设计的题目之后,利用很多时间,花费了很多心思进行设计,这次数据库课程设计我的最大就是只要自己有了兴趣,并且动手去做,困难在你的勇气和毅力下是抬不了头的。

从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。

坚持自主完成,这设计期间我遇到了很多问题,在需求分析阶段我查阅很多需求分析阶段的方法和相关系统的需求分析资料,力求我开发的这个系统的需求分析能做的更好,经历重重思考,客服种种问题基本确立了我所做系统应该完成的功能、信息、相关操作、完整性、安全性等的要求。

在概念设计阶段和逻辑设计阶段,我花费大量时间和精力,通过种种假设最终确定了各个实体和它的相关属性,以及实体间的联系,基于此开始绘制ER图,并且建立了8个基本表。

在整个设计阶段感受最为深刻的是掌握学习的方式和解决问题的方法。

首先是解决问题的方式,虽然面临的信息很多,如何从大量的信息中筛选出所需的信息,有用的信息,是解决问题的关键,另外一个就是解决问题的方法,就像解决设计中的很多问题一样,一开始总是在看书,和书上的进行比对,虽然书本上的只是大部分是有价值,正确的,但实际上每个人编程的思路和对数据处理的放法思想都是不同的,这就要求我们一定要通过实践才。

相关主题