高校教材管理系统设计_第1页
高校教材管理系统设计_第2页
高校教材管理系统设计_第3页
高校教材管理系统设计_第4页
高校教材管理系统设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

呼伦贝尔学院计算机科学与技术学院期末课程设计题目:高校教材管理系统学生姓名:学号:专业班级:12级软件工程一班指导教师:完成时间:2015年1月16日

目录第1章绪论 页(共18页)第1章引言1.1背景随着计算机的不断发展,计算机以渗透到各个领域,高校管理也不例外,其中教材管理的计算机化已不容迟缓。对于学校来说,教材管理是教学管理中的重要的一部分。教材订购发放的过程中总是面对大量的领书人信息、教材信息以及两者相互作用产生的领书信息、订书信息。因此需要对课程资源、教材资源、领书信息、进书信息进行管理,及时了解各个环节中信息的变更,有利于提高管理效率。因此,建立一套与开课相配套的教材管理模式和管理系统具有十分重要的意义和实际应用的迫切性,而且现有的条件、管理理念和技术水平已使之成为可能。1.2开发教材管理系统的目的开发教材管理系统的目的就是充分利用计算机和现代办公软件,摆脱传统办公工具,用计算机实现集中方便的管理工作,把学校教材科的工作人员从繁重的体力劳动中解脱出来以达到提高工作效率和质量,最终实现教材管理的全面自动化为和现代化。1.3开发环境介绍1.MicrosoftSQLServer2008SQLServer2008出现在微软数据平台愿景上是因为它使得公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察和信息给所有用户的成本。

第2章系统分析2.1可行性分析分析可行性的基本任务是在允许的成本和性能要求以及系统的范围内,分析每项需求得以实施的可能性。这项工作的目的在于明确与每项需求相关联的风险,包括一些与其他方面的冲突、对外部环境的依赖和某些技术的障碍等。2.1.1经济可行性在教材管理系统中,初始投入比较多,但系统建成后,可以实现资源共享,可以支持选课订书等操作,不但节省人力,还可以带来经济效益,减少人工操作,方便快捷,从经济上是可行的2.1.2技术可行性呼伦贝尔学院教材管理系统是对技术要求方面比较高,安全性和可靠性都要强,但我校计算机学院人才济济,从技术上来说是可行的。2.1.3操作可行性本系统技术要求不高,容易操作,而且登陆操作界面人性化,从操作上来说是可行的。2.2系统功能结构图高校教材管理系统功能结构,图如2-1所示第3章数据库设计3.1数据库概念结构设计概念设计的实质是将系统需求分析得到的用户需求抽象为信息结构的过程。概念设计的结果是数据库的概念模型,也就是用E-R图表示。首先我们为整个系统确立关系模型,步骤如下:1.班级,如图3-1所示3-1班级实体E-R图2.教师,如图3-2所示h3-2教师实体E-R图2**3.课程,如图3-3所示3-3课程实体E-R图4.教材,如图3-4所示3-4教材实体E-R图5.仓库,如图3-5所示3-5仓库实体E-R图6.供货商,如图3-6所示3-6供货商实体E-R图7.仓库管理员,如图3-7所示3-7经办人实体E-R图高校教材管理全局E-R图如下:3-8高校教材管理全局E-R图3.2数据库逻辑结构设计逻辑结构的设计任务就是把概念结构设计阶段设计好的基本E-R图转换为与DBMS产品所支持的数据模型相符合的逻辑结构1.本系统的关系模式如下班级(班级编号,班级名称,班级人数)教师(教师编号,教师姓名,联系电话,性别,年龄)课程(课程编号,课程名称,课程性质,选课人数)教材(教材编号,出版社编号,教材名称,ISBN号,作者,进货价格)仓库(仓库编号,仓库名称,仓库电话,仓库地址)供货商(供货商编号,供货商名,供货商地址,供货商电话)仓库管理员(仓库管理员编号,仓库管理员姓名,仓库管理员电话)领取(教材编号,班级编号,教师编号,领取时间,领取数量)存储(教材编号,仓库编号,存储数量)选课(课程编号,班级编号,教师编号,选课人数)用书(课程编号,教材编号,选课人数)入库(仓库管理员编号,仓库编号,入库时间,进货数量,教材编号)出库(仓库管理员编号,仓库编号,出库时间,出库数量,教材编号)订货表(订单编号,仓库编号,供货商编号,,教材编号,订货数量,订货时间)2.关系图,如图3-9所示3-9关系图3.3数据库物理结构设计各表名称及所包含的属性,数据类型和长度,主外键关系如下几张表所示:表3-1班级表字段名数据类型null其他班级编号varchar(10)notPK班级名varchar(10)人数int表3-2教师表字段名数据类型null其他教师编号Varchar(10)PK教师姓名nchar(10)性别char(2)电话nchar(11)表3-3课程表字段名数据类型null其他课程编号 varchar(10)notPK课程名称varchar(10)开课学期nchar(15)课程性质char(5)表3-4教材表字段名数据类型null其他教材编号 varchar(10)notPK出版社编号varchar(10)notFKISBNnchar(20)教材名nchar(20)not作者nchar(10)进货价格smallmoney表3-5仓库表字段名数据类型null其他仓库编号 varchar(10)notPK仓库名nchar(10)仓库电话char(11)仓库地址nchar(5)

表3-6供货商表字段名数据类型null其他供货商编号 varchar(10)notPK供货商名称varchar(10)供货商电话char(11)供货商电话nchar(5)表3-7仓库管理员表字段名数据类型null其他仓库管理员编号 varchar(10)notPK仓库管理员姓名varchar(10)not仓库管理员电话char(11)仓库管理员权限nchar(5)表3-8选课表字段名数据类型null其他教师编号 varchar(10)notPK.FK课程编号varchar(10)notPK.FK班级编号varchar(10)notPK选课人数IntNot表3-9用书表字段名数据类型null其他教材编号 varchar(10)notPK.FK课程编号varchar(10)notPK.FK选课人数IntNot表3-10存储表字段名数据类型null其他教材编号 varchar(10)notPK.FK仓库编号varchar(10)notPK.FK存储数量intnot表3-11领取表字段名数据类型null其他教材编号 varchar(10)notPK.FK班级编号varchar(10)notPK.FK教师编号varchar(10)NotPK,FK领取时间datenotPK领取数量Int表3-12入库表字段名数据类型null其他仓库编号 varchar(10)notPK.FK经办人编号varchar(10)notPK.FK入库时间datenotPK教材编号varchar(10)notFK入库数量int表3-13出库表字段名数据类型null其他仓库编号 varchar(10)notPK.FK仓库管理员编号varchar(10)notPK.FK出库时间datenotPK教材编号varchar(10)notFK出库数量int表3-14订单表字段名数据类型null其他订单编号 varchar(10)notPK供货商编号varchar(10)notPK.FK仓库编号varchar(10)notPK.FK教材编号varchar(10)notFK订货时间date订货数量int表3-15预定表字段名数据类型null其他教师编号 varchar(10)notPK、FK教材编号varchar(10)notPK、FK预定时间varchar(10)notPK课程编号varchar(10)notPK、FK3.4数据库的实施3.4.1表的创建createdatabase高校教材管理gouse高校教材管理createtable班级(班级编号varchar(10)primarykeynotnull,班级名varchar(10),人数int)insertinto班级values('2012105','软件工程',50)insertinto班级values('2012106','网络工程',30)insertinto班级values('2012107','信息管理',25)createtable教师(教师编号varchar(10)primarykeynotnull,教师姓名nchar(10),性别char(2),年龄int,教师电话nchar(11),)createtable课程(课程编号varchar(10)primarykeynotnull,课程名称nchar(10),课程性质char(10),选课人数int,)insertinto课程values('801001','数据库应用','专业选修','0')insertinto课程values('801002','java','专业必修','0')insertinto课程values('801003','C#.NET','专业必修','0')createtable出版社(出版社编号varchar(10)primarykeynotnull,出版社名nchar(20),出版社地址nchar(20),出版社电话char(11),联系人nchar(15),)insertinto出版社values('301001','北京日报出版社','内蒙古呼伦贝尔市健康街号','8912156','王志')insertinto出版社values('301002','远大出版社','内蒙古呼伦贝尔市鄂温克自治旗正阳街','8812156','李洁')createtable教材(教材编号varchar(10)primarykeynotnull,出版社编号varchar(10)notnull,ISBN号nchar(20),教材名nchar(20)notnull,--作者nchar(10),--进货价格smallmoney,--foreignkey(出版社编号)references出版社(出版社编号),)insertinto教材values('601001','301001','4758329912','C语言','周山','32')insertinto教材values('601002','301002','1613541615','数据库','李璇那','12')insertinto教材values('601003','301001','1564156415','Java语言','卡尼','45')insertinto教材values('601004','301002','1818641534','高等数学','王杰','42')insertinto教材values('601005','301002','1618461314','军事理论','赵昱航','33')insertinto教材values('601006','301001','1561515641','计算机导论','吴语韩','20')createtable仓库(仓库编号varchar(10)primarykeynotnull,--仓库名nchar(10),--仓库电话char(11),--仓库地址nchar(20)--)insertinto仓库values('001','一号仓库','8814567','内蒙古海拉尔学府路号')insertinto仓库values('002','二号仓库','8814568','内蒙古海拉尔学府路号')createtable供货商(供货商编号varchar(10)primarykeynotnull,--供货商名nchar(10),--供货商电话char(11),--供货商地址nchar(20)--)createtable管理员(管理员编号varchar(10)primarykeynotnull,管理员姓名nchar(10)notnull,管理员电话char(11),)insertinto管理员values('621001','李白',)insertinto管理员values('621002','张华',)insertinto管理员values('621003','李浩宇',)insertinto管理员values('621004','张楠',)createtable选课(教师编号varchar(10)notnull,课程编号varchar(10)notnull,班级编号varchar(10)notnull,选课人数int,primarykey(教师编号,课程编号,班级编号),foreignkey(教师编号)references教师(教师编号),foreignkey(课程编号)references课程(课程编号),foreignkey(班级编号)references课程(班级编号),)createtable用书(教材编号varchar(10)notnull,课程编号varchar(10)notnull,选课人数intnotnull,primarykey(教材编号,课程编号),foreignkey(教材编号)references教材(教材编号),foreignkey(课程编号)references课程(课程编号),)createtable存储(教材编号varchar(10)notnull,仓库编号varchar(10)notnull,存储数量int,primarykey(教材编号,仓库编号),foreignkey(教材编号)references教材(教材编号),foreignkey(仓库编号)references仓库(仓库编号),)insertinto存储values('601001','001',100)insertinto存储values('601002','001',100)insertinto存储values('601003','001',100)insertinto存储values('601004','002',200)insertinto存储values('601005','002',200)insertinto存储values('601006','002',200)insertinto存储values('601004','001',200)createtable领取(教师编号varchar(10)notnull,班级编号varchar(10)notnull,管理员编号varchar(10)notnull,领取时间datenotnull,课程编号varchar(10)notnull,教材编号varchar(10)notnull,总价money,primarykey(领取时间,管理员编号,班级编号),foreignkey(班级编号)references班级(班级编号),foreignkey(课程编号)references课程(课程编号),foreignkey(教材编号)references教材(教材编号),)insertinto领取values('201001','621001','2013-01-01','801001','601001','500')insertinto领取values('201002','621001','2013-01-01','801001','601001','400')insertinto领取values('201003','621001','2013-01-01','801001','601001','300')createtable入库表(仓库编号varchar(10)notnull,管理员编号varchar(10)notnull,入库时间datenotnull,教材编号varchar(10)notnull,入库数量int,primarykey(仓库编号,管理员编号,入库时间,教材编号),foreignkey(仓库编号)references仓库(仓库编号),foreignkey(管理员编号)references管理员(管理员编号),foreignkey(教材编号)references教材(教材编号),)insertinto入库表values('001','621003','2013-01-01','601001',0)insertinto入库表values('001','621003','2013-01-01','601002',0)insertinto入库表values('002','621004','2013-05-01','601004',0)insertinto入库表values('002','621004','2013-05-01','601005',0)insertinto入库表values('002','621004','2013-01-01','601006',0)createtable出库表(仓库编号varchar(10)notnull,管理员编号varchar(10)notnull,出库时间datenotnull,教材编号varchar(10)notnull,出库数量int,primarykey(仓库编号,管理员编号,出库时间,教材编号),foreignkey(仓库编号)references仓库(仓库编号),foreignkey(管理员编号)references管理员(管理员编号),foreignkey(教材编号)references教材(教材编号),)insertinto出库表values('001','621003','2013-01-01','601001',0)insertinto出库表values('001','621003','2013-01-01','601002',0)insertinto出库表values('002','621004','2013-05-01','601004',0)insertinto出库表values('002','621004','2013-05-01','601005',0)insertinto出库表values('002','621004','2013-01-01','601006',0)createtable订单(订单编号varchar(10)primarykeynotnull,供货商编号varchar(10)notnull,仓库编号varchar(10)notnull,教材编号varchar(10)notnull,订货时间date,订货数量int,foreignkey(仓库编号)references仓库(仓库编号),foreignkey(供货商编号)references供货商(供货商编号),foreignkey(教材编号)references教材(教材编号),)3.4.2创建存储过程存储过程是一组预先编译好的,能实现特定数据操作功能的SQL代码集。它与特定数据相关联,一起被存储在SQLSever服务器上。客户通过应用程序调用执行,可以像使用函数一样重负使用这些代码集,实现定义的操作。为了方便教师及仓库管理员查看教材的库存,创建存储过程,实现根据教材名称查看存储表中的库存,其代码如下:createproc教材_count@jiaocainchar(20)asdeclare@kucunintselect@jiaocai=教材名,@kucun=存储数量from教材,存储where存储.教材编号=教材.教材编号PRINT'教材名:'+CONVERT(CHAR(10),@jiaocai)+'库存:'+CONVERT(CHAR(10),@kucun)GO3.4.3创建触发器教材入库出库后,存储表中的存储数量也相应变化1.入库表触发器更新createtrigger入库_更新on入库表forupdateasdeclare@jiaocaiintdeclare@oldint,@newcountintselect@jiaocai=教材编号fromdeletedselect@old=入库数量fromdeletedselect@new=入库数量frominsertedupdate存储set存储数量=存储数量+@new-@oldwhere教材编号=@jiaocaigo2.出库表触发器更新createtrigger出库_更新on出库表forupdateasdeclare@jiaocaiintdeclare@oldint,@newintselect@jiaocai=教材编号fromdeletedselect@old=出库数量fromdeletedselect@new=出库数量frominsertedupdate存储set存储数量=存储数量+@new-@oldwhere教材编号=@jiaocaigo添加教材后存储数量发生变化CREATETRIGGERjiaocai_insertonstudentforinsertasdeclare@newchar(10)select@new=教材编号frominsertedupdatedbo.存储

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论