九号数据库课程设计.docx
- 文档编号:9323848
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:21
- 大小:859.61KB
九号数据库课程设计.docx
《九号数据库课程设计.docx》由会员分享,可在线阅读,更多相关《九号数据库课程设计.docx(21页珍藏版)》请在冰豆网上搜索。
九号数据库课程设计
软件学院
课程设计报告书
课程名称数据库原理及应用课程设计
设计题目企业资产管理系统
专业班级
学号
姓名
指导教师李建东
2012年6月
目录
1设计时间4
2设计目的4
3设计任务4
4设计内容4
4.1需求分析4
4.1.1功能要求分析4
4.1.2信息要求分析5
4.1.3处理要求分析5
4.1.4安全性要求分析5
4.1.5完整性要求分析5
4.2系统设计5
4.2.1概念结构设计6
4.2.2逻辑结构设计8
4.2.3物理结构设计8
4.3系统实施10
4.3.1数据库实现10
4.3.2数据载入17
4.4运行与测试19
4.4.1运行与测试19
4.4.2分析20
5总结与展望20
参考文献22
成绩评定22
1设计时间
第17周(2011年6月3号——2011年6月7号)
2设计目的
数据库原理及应用课程设计是软件工程专业集中实践性环节之一,是学习完《数据库原理及应用》课程后进行的一次全面的综合练习。
其目的在于加深对数据库基础理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
同时,此次设计对于同学将来的毕业设计和具体工作实践将有重要的意义。
3设计任务
(1)设计任务的功能要求如下:
a.企业资产购置:
将企业资产信息插入企业资产数据文件。
b.企业资产的领用:
企业资产发放给相关部门使用,登记相关信息。
c.企业资产的内部调拨:
由一个部门调拨到另一个部门,登记相关信息。
d.企业资产出租:
本企业资产出租给其他企业,对租赁费用、时间等登记管理
e.企业资产的报废:
企业资产达到报废年限或其他原因报废,登记相关报废信息。
(2)对以上具体功能的查询、统计功能
(3)数据要求为:
a.资产数据:
资产代码、资产名称、资产类型、规格型号、单位、制造厂家、购置日期、原值(帐面价值)等
b.资产领用数据:
资产代码、资产名称、领用部门、领用日期、经办人
c.资产调拨数据:
资产代码、资产名称、调入部门、调出部门、调拨日期、经办人
d.资产出租数据:
资产代码、资产名称、租用单位、出租日期、到期日期、租赁费用、经办人
e.资产报废数据:
资产代码、资产名称、资产残值、报废原因、报废日期、经办人
4设计内容
4.1需求分析
4.1.1功能要求分析
通过对用户的调查分析总结系统需要具有以下功能:
1)企业资产购置:
将企业资产信息插入企业资产数据文件。
2)企业资产的领用:
企业资产发放给相关部门使用,登记相关信息。
3)企业资产的内部调拨:
由一个部门调拨到另一个部门,登记相关信息。
4)企业资产出租:
本企业资产出租给其他企业,对租赁费用、时间等登记管理
企业资产的报废:
企业资产达到报废年限或其他原因报废,登记相关报废信息。
4.1.2信息要求分析
通过对用户的调查分析总结出系统需要具有以下信息:
资产数据:
资产代码、资产名称、资产类型、规格型号、单位、制造厂家、购置日期、原值(帐面价值)等。
资产领用数据:
资产代码、资产名称、领用部门、领用日期、经办人。
资产调拨数据:
资产代码、资产名称、调入部门、调出部门、调拨日期、经办人。
资产出租数据:
资产代码、资产名称、租用单位、出租日期、到期日期、租赁费用、经办人。
资产报废数据:
资产代码、资产名称、资产残值、报废原因、报废日期、经办人。
4.1.3处理要求分析
通过对用户的调查分析发现用户主要希望系统具有查询和统计功能。
4.1.4安全性要求分析
通过对用户的调查分析总结出系统需要设置不同权限的用户对该数据库进行访问,完成该用户权限内的查询或者统计功能。
系统安全性达到C1级即可。
4.1.5完整性要求分析
通过对用户的调查分析总结出系统的完整性约束主要表现为在主键,外键的设置,非空的控制和对某些属性取值范围的控制等。
4.2系统设计
4.2.1概念结构设计
(1)各分E-R图
资产领用数据E-R图如图所示资产调拨数据E-R图如图所示
资产出租数据E-R图如图所示资产报废数据E-R图如图所示
图1.资产领用数据E-R图
图2.资产调拨数据E-R图
图3.资产出租数据E-R图
图4.资产报废数据E-R图
(2)总E-R图
图5.系统总E-R图
注:
总E-R图中属性省略未画,各实体和联系的属性整理如下:
资产(资产代码,资产名称,资产类型,规格型号,制造厂家,购置日期,原值)
领用部门(部门号,经办人)
领用(领用日期)
调拨部门(部门号,调出部门号,经办人)
调拨(调拨日期)
单位(单位号,经办人)
出租(到期日期,出租日期,租赁费用)
存放处(报废处号,经办人)
报废(资产残值,报废原因,报废日期)
4.2.2逻辑结构设计
本系统选用关系模型建立。
各个关系表的主码由下划线标出。
资产表(资产代码,资产名称,资产类型,规格型号,制造厂家,购置日期,原值)
Asset(A_ID,A_Name,A_Type,A_Model,A_Manufacturers,A_purchasedate,A_Originalvalue)
部门表(部门号,经办人)Department(Dno,D_Agent)
领用表(资产号,部门号,领用日期)Lingyong(A_ID,Dno,L_Date)
调拨表(资产号,部门号,调出部门号,调拨日期)Diaobo(A_ID,Dno,OutDno,D_Date)
单位表(单位号,经办人)Unit(Uno,U_Agent)
出租表(资产号,单位号,到期日期,出租日期,租赁费用)
Rent(A_ID,Uno,E_Date,R_Date,R_Cost)
存放处表(存放处号,经办人)Cunfang(Cno,C_Agent)
报废表(资产号,存放处号,资产残值,报废原因,报废日期)
Baofei(A_ID,Cno,B_Value,B_Reason,B_Date)
根据关系模式规范化理论,对关系模式进行优化,发现以上各表基本满足三范式要求。
4.2.3物理结构设计
基本表的结构如下:
表1.资产表(Asset)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
A_ID
资产代码
char
(2)
Y
Y
索引
A_Name
资产名称
nchar(20)
Y
N
无
A_Type
资产类型
nchar(20)
Y
N
无
A_Model
规格型号
nchar(20)
N
N
无
A_Manufacturers
制造厂家
nchar(20)
N
N
无
A_purchasedate
购置日期
datetime
N
N
无
A_Originalvalue
原值
float
N
N
无
表2.部门表(Department)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
Dno
部门号
char
(2)
Y
Y
索引
D_Agent
经办人
char(20)
N
N
无
表3.领用表(Lingyong)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
A_ID
资产号
char
(2)
Y
Y
外键
Dno
部门号
char
(2)
Y
Y
外键
L_Date
领用日期
datetime
N
N
无
表4.调拨表(Diaobo)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
A_ID
资产号
char
(2)
Y
Y
外键
Dno
部门号
char
(2)
Y
Y
外键
OutDno
调出部门号
char
(2)
Y
Y
外键
D_Date
调拨日期
datetime
N
N
无
表5.单位表(Unit)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
Uno
单位号
char
(2)
Y
Y
索引
U_Agent
经办人
char(20)
Y
N
无
表6.出租表(Rent)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
A_ID
资产号
char
(2)
Y
Y
外键
Uno
部门号
char
(2)
Y
Y
外键
E_Date
到期日期
datetime
N
N
无
R_Date
出租日期
datetime
N
N
无
R_Cost
租赁费用
float
N
N
无
表7.存放处表(Cunfang)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
Cno
存放处号
char
(2)
Y
Y
索引
C_Agent
经办人
char(20)
Y
N
无
表8.报废表(Baofei)
字段名称
中文名称
类型(长度)
是否非空
主关键字
取值范围
备注
A_ID
资产号
Char
(2)
Y
Y
外键
Cno
存放处号
Char
(2)
Y
Y
外键
B_Value
资产残值
Float
N
N
无
B_Reason
报废原因
Char(50)
N
N
无
B_Date
报废日期
datetime
N
N
无
为系统建立四个视图,分别为资产调拨视图,资产领用视图,资产出租视图,资产报废视图。
根据对系统的分析发现当系统资产基本表中的一个资产达到报废标准进行报废后,该资产在其他表中的记录应该相应删除,为此建立三个触发器,分别来触发这一事件。
对系统的分析总结发现,应对该系统设置五类用户分别是超级用户可以对所有表和视图进行查询,修改和删除数据的操作,另外四类分别只能对所构建的四个视图进行查询,修改和删除数据的操作。
系统对四类低级用户可以授权给不同的角色,这些角色可能只对某视图具有查询,修改,删除中的一个或几个权限。
4.3系统实施
4.3.1数据库实现
1.数据库的建立
图1.ZiCanGanli数据库建立语句图
图2.系统为ZiCanGanLi数据库分配空间
由这些截图可知,名为ZiCanGuanLi的数据库建立成功
2.基本表的建立
(1)对Asset表的建立,如图所示:
图3.Asset表建立图
(2)对Department表的建立语句为:
createtableDepartment
(Dnochar
(2)notnull,
D_Agentnchar(20)
constraintPK_Departmentprimarykey(Dno)
);
(3)对LingYong表的建立语句为:
createtableLingyong
(A_IDchar
(2)notnull,
Dnochar
(2)notnull,
L_Datedatetime
constraintPK_Lingyongprimarykey(A_ID,Dno)
foreignkey(A_ID)referencesAsset(A_ID),
foreignkey(Dno)referencesDepartment(Dno)
);
(4)对Diaobo表的建立语句为:
createtableDiaobo
(A_IDchar
(2)notnull,
Dnochar
(2)notnull,
OutDnochar
(2)notnull,
D_Datedatetime
constraintPK_Diaoboprimarykey(A_ID,Dno,OutDno)
foreignkey(A_ID)referencesAsset(A_ID),
foreignkey(Dno)referencesDepartment(Dno),
foreignkey(OutDno)referencesDepartment(Dno)
);
(5)对Unit表的建立语句为:
createtableUnit
(Unochar
(2)notnull,
U_Agentnchar(20)notnull,
constraintPK_Unitprimarykey(Uno)
);
(6)对Rent表的建立语句为:
createtableRent
(A_IDchar
(2)notnull,
Unochar
(2)notnull,
E_Datedatetime,
R_Datedatetime,
R_Costfloat
constraintPK_Rentprimarykey(A_ID,Uno)
foreignkey(A_ID)referencesAsset(A_ID),
foreignkey(Uno)referencesUnit(Uno)
);
(7)对Cunfang表的建立语句为:
createtableCunfang
(Cnochar
(2)notnull,
C_Agentchar(20)notnull,
constraintPK_Cunfangprimarykey(Cno)
);
(8)对Baofei表的建立:
由下图左半部分可知,八个表已经顺利完成。
图4.Baofei表建立图及八个表的实现的证明
3.视图的实现
(1)对V_Diaobo视图的建立语句为:
createviewV_Diaobo
as
selectAsset.A_Name,Diaobo.A_ID,Diaobo.Dno,Diaobo.OutDno,
Diaobo.D_Date,Department.D_Agent
fromAsset,Diaobo,Department,DepartmentDepartment_1
whereAsset.A_ID=Diaobo.A_IDAND
Diaobo.Dno=Department.DnoAND
Diaobo.OutDno=Department_1.Dno
(2)对V_Rent视图的建立语句为:
createviewV_Rent
as
selectRent.A_ID,Rent.Uno,Asset.A_Name,Rent.E_Date,Rent.R_Date,
Rent.R_Cost,Unit.U_Agent
fromAsset,Rent,Unit
whereAsset.A_ID=Rent.A_IDANDRent.Uno=Unit.Uno
(3)对V_Lingyong视图的建立语句为:
createviewV_Lingyong
as
selectLingyong.A_ID,Lingyong.Dno,Lingyong.L_Date,
Department.D_Agent,Asset.A_Name
fromAsset,Department,Lingyong
whereAsset.A_ID=Lingyong.A_IDANDLingyong.Uno=Department.Uno
(4)对V_Baofei视图的建立
由下图可知,对四个视图的建立都是成功的。
图5.视图表
4.触发器的实现
(1)Baofeichuli1
createtriggerBaofeichuli1
onBaofei
afterinsert
as
deletefromDiaobowhereDiaobo.A_ID=(selectA_IDfrominserted);
(2)Baofeichuli2
createtriggerBaofeichuli2
onBaofei
afterinsert
as
deletefromLingyongwhereLingyong.A_ID=(selectA_IDfrominserted);
(3)Baofeichuli3
createtriggerBaofeichuli3
onBaofei
afterinsert
as
deletefromRentwhereRent.A_ID=(selectA_IDfrominserted);
5.用户的创建
利用它可视化操作创建超级用户和普通用户。
4.3.2数据载入
数据载入后结果如下各图所示。
图6.资产表数据图
图7.部门表数据图
图8.领用表数据图
图9.调拨表数据图
图10.单位表数据图
图11.出租表数据图
图12.存放处表数据图
图13.报废表数据图
图14.Daibo表
在Baofei表中插入数据后,触发器成功出发,在表里删除相应记录
图15.Lingyong数据图
在Baofei表中插入数据后,触发器成功出发,在表里删除相应记录
图16.Rent数据图
在Baofei表中插入数据后,但表中没有相应记录,不触发触发器,故无变化。
4.4运行与测试
4.4.1运行与测试
系统查询功能具有查询系统所有四个视图中信息的功能。
(1)对V_Diaobo的查询
图17.V_Diaobo视图
(2)对V_Rent的查询
图16.V_Rent视图
(3)对V_Lingyong的查询
图16.V_Lingyong视图
(4)对V_Baofei的查询
图16.V_Baofei视图
由视图的性质,可为不同用户分配不同权限,查看到不同的视图。
4.4.2分析
在本次课程设计过程中遇到了很多SQL语句语法的问题,通过查询相关书籍资料,网站资料以及SQLServer2000帮助文档等熟悉相关语句语法的,在本次设计中首先根据设计题目构想用户的相关需求,完成了需求分析阶段的任务,清晰记录了系统要实现和解决的问题,然后通过数据库的建立,各个基本表、视图、索引、触发器等的建立完成了数据库的搭建工作。
搭建中数次对基本表和视图等内容进行改动进行优化处理。
通过对系统的建设分析,系统可以在基本数据的关系上进行更加细化的处理。
5总结与展望
通过一学期对数据库的学习,我对数据库的知识、理念有了一定的掌握,此次课程设计正是一次对我掌握程度的检验,平时上机练习的时间不是很多,所以我在确定了自己要设计的题目之后,利用很多时间,花费了很多心思进行设计,这次数据库课程设计我的最大就是只要自己有了兴趣,并且动手去做,困难在你的勇气和毅力下是抬不了头的。
从做这个数据库开始无论遇到什么困难,我都没有一丝的放弃的念头。
坚持自主完成,这设计期间我遇到了很多问题,在需求分析阶段我查阅很多需求分析阶段的方法和相关系统的需求分析资料,力求我开发的这个系统的需求分析能做的更好,经历重重思考,客服种种问题基本确立了我所做系统应该完成的功能、信息、相关操作、完整性、安全性等的要求。
在概念设计阶段和逻辑设计阶段,我花费大量时间和精力,通过种种假设最终确定了各个实体和它的相关属性,以及实体间的联系,基于此开始绘制ER图,并且建立了8个基本表。
在整个设计阶段感受最为深刻的是掌握学习的方式和解决问题的方法。
首先是解决问题的方式,虽然面临的信息很多,如何从大量的信息中筛选出所需的信息,有用的信息,是解决问题的关键,另外一个就是解决问题的方法,就像解决设计中的很多问题一样,一开始总是在看书,和书上的进行比对,虽然书本上的只是大部分是有价值,正确的,但实际上每个人编程的思路和对数据处理的放法思想都是不同的,这就要求我们一定要通过实践才能找到解决问题的方案。
在整个课程设计的过程中,我深刻的体会到这一点的重要性,也牢记住了这一点,在今后的学习和研究中我也会继续将这种方法延续下去我完成了这次数据库课程设计,不过这只是我学习路上的驿站,语言本来就是相通的,语言并不重要毕竟它仅仅是工具,用好一个工具并不是一件值得为外人道的事情,主要是了解学习思想。
参考文献
[1]王珊,萨师煊,数据库系统概论.第四版,北京:
高等教育出版社,2006年.
[2]苗雪兰.数据库技术及应用.北京:
机械工业出版社,2006年.
参考文献要求
1)标题:
黑体,小三,1.5倍行距,居中
2)内容:
五号,中文宋体,西文TimesNewRoman)
3)出版物、正文期刊、外文期刊、网站的参考文献格式分别参照[1][2][3][4]
成绩评定(与参考文献在一页)
成绩教师签字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 号数 课程设计