数据库原理与应用课程设计企业资产管理系统.docx
《数据库原理与应用课程设计企业资产管理系统.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用课程设计企业资产管理系统.docx(42页珍藏版)》请在冰豆网上搜索。
数据库原理与应用课程设计企业资产管理系统
软件学院
课程设计报告书
课程名称
数据库原理及应用
设计题目
企业资产管理系统
专业班级
软件10-01
学
号
姓
名
指导教师
李建东
2012年6月
1设计时间3
2设计目的3
3设计任务3
4设计内容3
4.1需求分析3
4.1.1系统功能要求4
4.1.2数据字典4
4.2系统设计5
4.2.1概念结构设计5
4.2.2逻辑结构设计6
4.2.3物理结构设计7
4.3系统实施8
4.3.1数据库实现8
4.3.2数据载入12
4.4运行与测试12
4.4.1运行与测试12
4.4.2分析14
5总结与展望14
参考文献15
成绩评定15
2
1设计时间
17周(2012年6月4日-2012年6月8日)
2设计目的
数据库原理及应用课程设计是软件工程专业集中实践性环节之一,是学习完《数据库
系统概论》课程后进行的一次全面的综合练习。
其目的在于加深对数据库基础理论和基本
知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的
能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,
使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
同时,此次
设计对于将来的毕业设计和具体工作实践将有重要的意义。
3设计任务
企业资产管理
功能要求:
1)企业资产购置:
将企业资产信息插入企业资产数据文件。
2)企业资产的领用:
企业资产发放给相关部门使用,登记相关信息。
3)企业资产的内部调拨:
由一个部门调拨到另一个部门,登记相关信息。
4)企业资产出租:
本企业资产出租给其他企业,对租赁费用、时间等登记管理
5)企业资产的报废:
企业资产达到报废年限或其他原因报废,登记相关报废信息。
对以上具体功能的查询、统计功能
数据要求:
资产数据:
资产代码、资产名称、资产类型、规格型号、单位、制造厂家、购置日期、
原值(帐面价值)等
资产领用数据:
资产代码、资产名称、领用部门、领用日期、经办人
资产调拨数据:
资产代码、资产名称、调入部门、调出部门、调拨日期、经办人
资产出租数据:
资产代码、资产名称、租用单位、出租日期、到期日期、租赁费用、
经办人
资产报废数据:
资产代码、资产名称、资产残值、报废原因、报废日期、经办人
4设计内容
4.1需求分析
3
4.1.1系统功能要求
1)企业资产购置:
将企业资产信息插入企业资产数据文件。
2)企业资产的领用:
企业资产发放给相关部门使用,登记相关信息。
3)企业资产的内部调拨:
由一个部门调拨到另一个部门,登记相关信息。
4)企业资产出租:
本企业资产出租给其他企业,对租赁费用、时间等登记管理
5)企业资产的报废:
企业资产达到报废年限或其他原因报废,登记相关报废信息。
对以上具体功能的查询、统计功能
4.1.2数据字典
表4.1.1
数据字典
数据项名
数据类型
字段大小
取值范围
描述
资产代码
int
资产代码
名称
char
20
资产名称
类型
char
20
资产类型
规格型号
char
10
规格型号
单位
char
30
资产所属单
位
制造厂家
char
20
资产制造厂
家
购置日期
date
购置日期
原值
float
2
帐面价值
部门
char
10
领用日期
date
资产领用日
期
调拨,领用
经办人
char
8
出租,报废
经办人
调拨日期
date
调拨日期
租用单位
char
30
租用资产单
位
出租日期
date
资产出租日
期
4
到期日期
date
出租资产到
期日期
租赁费用
fload
2
租赁费用
资产残值
fload
2
资产残值
报废原因
char
200
资产报废原
因
报废日期
date
资产报废日
期
4.2系统设计
4.2.1概念结构设计
概念结构设计是对现实世界的一种抽象,即对实际的人、物、事和概念进行人为处理,
抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各种该你那精确地加以描述,
通过该过程形成E-R图。
局部E-R图:
资产代码原值
购置日期
名称
企业资产
类型
制造厂家
规格型号
单位
图4.2.1.1
资产及其属性联系
购置
部门
名称
资产代码
购置日期
图4.2.1.2
部门和单位及其属性联系
图4.2.1.3
购置及其属性联系
报废
资产代码
报废日期
经办人
报废原因
资产残值
图4.2.1.3
资产报废及其属性联系
5
出租
租用单位经办人
出租日期租赁费用
到期日期
图4.2.1.3出租及其属性联系
n领用m
企业资产
部门
m
调拨
n
图4.2.1.3
实体及联系图
综合E-R图:
单位
资产代码
n
领用
m
原值
企业资产
部门
名称
m
调拨
n
类型
报废
规格型号
资产代码
报废日期
购置日期
经办人
报废原因资产残值
制造厂家
出租
租用单位经办人
出租日期租赁费用
到期日期
图4.2.1.4综合E-R图
4.2.2逻辑结构设计
逻辑结构设计的任务就是把概念结构设计阶段设计好的E-R图转换为与所用DBMS产
品所支持的数据模型相符合的逻辑结构。
6
将4.2.1概念结构设计形成的E-R图转变为关系模型(符合3NF)如下:
企业资产(资产代码、资产名称、资产类型、规格型号、单位、制造厂家、购置日期、原
值)
资产领用(资产代码、领用部门、领用日期、经办人)
资产调拨(资产代码、调入部门、调出部门、调拨日期、经办人)
资产出租(资产代码、租用单位、出租日期、到期日期、租赁费用、经办人)
资产报废(资产代码、资产名称、资产残值、报废原因、报废日期、经办人)
4.2.3物理结构设计
物理结构设计是根据逻辑结构设计所转变成的关系模型,把关系模型以三线表的形式
展现出来,方便查询和更新。
表4.2.3.1
资产表物理结构设计
中文名称
数据类型
字段大小
取值范围
是否非空
描述
资产代码
int
Y
资产号码
资产名称
varchar
20
Y
资产名称
资产类型
varchar
20
Y
资产类型
规格型号
varchar
10
Y
规格型号
单位
varchar
30
N
资产所属单
位
制造厂家
varchar
20
N
资产制造厂
家
购置日期
date
Y
购置日期
原值
fload
账面价值
表4.2.3.2
资产领用物理结构设计
中文名称
数据类型
字段大小
取值范围
是否非空
描述
资产代码
int
Y
资产号码
领用部门
varchar
10
N
领用部门
领用日期
date
Y
资产所属单
位
经办人
char
8
Y
领用经办人
表4.2.3.3资产调拨表物理结构设计
中文名称
数据类型
字段大小
取值范围
是否非空
描述
资产代码
int
Y
资产号码
调入部门
varchar
10
Y
调入部门
调出部门
varchar
10
Y
调出部门
调拨日期
date
Y
调拨日期
经办人
char
8
Y
调拨经办人
7
表4.2.3.4
资产出租表物理结构设计
中文名称
数据类型
字段大小
取值范围
是否非空
描述
资产代码
int
Y
资产号码
租用单位
varchar
30
Y
租用单位
出租日期
date
Y
出租日期
到期日期
date
Y
到期日期
经办人
char
8
Y
出租经办人
表4.2.3.3
资产报废表物理结构设计
中文名称
数据类型
字段大小
取值范围
是否非空
描述
资产代码
int
Y
资产号码
报废残值
float
Y
报废残值
报废原因
varchar
50
Y
报废原因
报废日期
date
Y
报废日期
经办人
char
8
Y
报废经办人
4.3系统实施
4.3.1数据库实现
建立数据库:
CREATEDATABASE企业资产管理;
建立数据表:
createtable资产
(资产代码intnotnull,
资产名称varchar(20)notnull,
资产类型varchar(20)notnull,
规格型号varchar(10)notnull,
单位varchar(30),
制造厂家varchar(20),
购置日期datetime,
原值float,
constraintPK_资产primarykey(资产代码)
);
createtable部门
(部门名称varchar(20)notnull,
constraintPK_部门primarykey(部门名称)
8
);
createtable资产领用
(资产代码intnotnull,
领用部门varchar(20)notnull,
领用日期datetime,
经办人char(8),
constraintPK_资产领用primarykey(资产代码,领用部门,领用日期),foreignkey(资产代码)references资产(资产代码),foreignkey(领用部门)references部门(部门名称)
);
createtable资产调拨
(资产代码intnotnull,
调入部门varchar(20)notnull,
调出部门varchar(20)notnull,
调拨日期datetime,
经办人char(8),
constraintPK_资产调拨primarykey(资产代码,调入部门,调出部门,调拨日期),foreignkey(资产代码)references资产(资产代码),
foreignkey(调入部门)references部门(部门名称),foreignkey(调出部门)references部门(部门名称)
);
createtable资产出租
(资产代码intnotnull,
租用单位varchar(30)notnull,
出租日期datetime,
到期日期datetime,
租赁费用float,
9
经办人char(8),
constraintPK_资产出租primarykey(资产代码,租用单位,出租日期),foreignkey(资产代码)references资产(资产代码),
);
createtable资产报废
(资产代码intnotnull,
报废残值float,
报废原因char(50),
报废日期datetime,
经办人char(8),
constraintPK_资产报废primarykey(资产代码),
foreignkey(资产代码)references资产(资产代码),
);
建立视图:
createview调拨信息
as
select资产调拨.资产代码,资产.资产名称,资产调拨.调入部门,资产调拨.调出部门,资产调拨.调拨日期,资产调拨.经办人
from资产,资产调拨,部门,部门部门_1
where资产.资产代码=资产调拨.资产代码AND资产调拨.调入部门=部门.部门名称AND资产调拨.调出部门=部门_1.部门名称
createview出租信息
as
select资产出租.资产代码,资产.资产名称,资产出租.租用单位,资产出租.出租日期,资产出租.到期日期,资产出租.租赁费用
from资产,资产出租
where资产.资产代码=资产出租.资产代码
10
createview领用信息
as
select资产领用.资产代码,资产.资产名称,资产领用.领用部门,资产领用.领用日期,
资产领用.经办人
from资产,资产领用
where资产.资产代码=资产领用.资产代码
createview报废信息
as
select资产报废.资产代码,资产.资产名称,资产报废.报废原因,资产报废.报废残值,资产报废.报废日期
from资产,资产报废
where资产.资产代码=资产报废.资产代码
建立触发器:
createtriggerB1
on资产报废
afterinsert
as
deletefrom资产调拨where资产调拨.资产代码=(select资产代码frominserted);
createtriggerB2
on资产报废
afterinsert
as
deletefrom资产领用where资产领用.资产代码=(select资产代码frominserted);
createtriggerB3
on资产报废
afterinsert
as
deletefrom资产出租where资产出租.资产代码=(select资产代码frominserted);
11
createtriggerB4
on资产报废
afterinsert
as
insertinto报废资产
select*
from资产
4.3.2数据载入
4.4运行与测试
4.4.1运行与测试
设计系统查询功能及要求,写出主要的查询SQL语句,并给出运行结果。
1、购置资产
insert
into资产
values(5,'PEPER','办公用品','c1','A','toshiba',2012-04-10,200.00)
12
2、资产出租
3、资产调拨
4、资产领用
5、资产报废
13
4.4.2分析
在创建数据库的的过成中,各表的属性列及表的外码约束的名称和数据类型很容易
出入错误。
插入数据时,插入数据的数量要和定义的数量匹配,若多于定义的数据类则拒
绝插入。
资产报废的相关操作通过建立触发器实现,在录入一项报废资产,同时删除出租、
调拨、领用表中该资产的数据,并将资产数据插入到报废资产表中。
创建触发器时利用教
科书上“asbegin触发体动作end”语句,结果在录入一条报废资产时将所有资产信息都
删除了,后改为“as触发体动作”则达到预期效果。
初步分析,由于版本问题本实验使用
的SQL2000中原来的触发语句,被默认为行级触发器,所以将数据都删除了,后改为语句级触发器则修正了这个问题。
本次创建的数据库还存在很多问题,比如各表的完整性约束条件都不完善,如一件
资产的报废日期必不能早于该资产的购置日期,还有某一资产若正处于出租期间,就不会
有调拨记录等,这些都是本数据库需要完善的地方。
5总结与展望
企业资产管理是面向资产密集型企业的信息化,制造业信息化,企业信息化解决方案
的总称。
它以提高资产可利用率、降低企业运行维护成本为目标,以优化企业维修资源为
核心,通过信息化手段,合理安排维修计划及相关资源与活动。
通过提高设备可利用率得
以增加收益,通过优化安排维修资源得以降低成本,从而提高企业的经济效益和企业的市
场竞争力。
由于时间所限不能做实际的需求分析,所以在概念结构设计和逻辑结构设计是遇到困
难,不能明确的抽取对象实体,比如在出租的时候,是否将出租单位抽为实体,后经讨论
认为一个企业中的数据库应该没必要存其他各单位的信息,所以在实际实现数据库的时
候,将出租单位抽象成出租这个实体的属性。
对各个属性间的依赖分析出现分歧。
要想建
立一个真正完整的数据库还需要做许多调查和努力。
14
参考文献
[1]王珊,萨师煊.数据库系统概论.第4版,北京:
高等教育出版社,2006.5
成绩评定
成绩教师签字
15