数据库原理课程设计报告题目名称:专业:班级:学号:学生姓名:指引教师:高校教材管理系统信息管理与信息系统信管班*****完毕日期.7.41.题目规定实现出版社、教材类型等管理;实现教材订购管理;实现教材入库管理;创立触发器,实现教材入库和出库时自动修改库存数量;创立存储过程记录各种教材订购、到货和发放数量;建立数据库有关表之间参照完整性约束。2.设计基本规定(1)构造设计,涉及概念构造设计,逻辑构造设计和物理构造设计与高校教材管理相结合;(2)列出实体、联系及实体和联系属性;(3)画出E-R图;E-R图转换成关系模式,并注明主码和外码;(4)建立直观数据字典;(5)创立数据库,对的SQL语句;(6)依照题目规定写查询、存储过程、触发器等。高校管理系统3.设计过程3.1问题描述高校教材管理系统:实现教材基本信息管理;实现教材订购管理;实现教材入库管理;实现教材领用管理。3.2需求分析开发教材管理系统目就是充分运用计算机和当代办公软件,挣脱老式办公工具,用计算机实现集中以便管理工作,把学校教材科工作人员从繁重体力劳动中解脱出来以提高工作效率和质量,最后实现教材管理全面自动化为和当代化。因而系统重要是实现教材管理信息输入涉及入库、出库、需求信息输入等。教材管理各种信息查询、修改以及各系各部门教材需求管理等。3.3系统功能模块图(1)高校教材管理系统:学出订教校版购材表社表表信表信信息信息息管息管管订入订发发订教购库单货货数购数材开始订购出版社教材N库存量订购量YN与否成功Y缴纳费用结束3.4构造流程图(1)学校订购流程图开始出版社发布教材N订单与否Y发货结束学校学校号学校名(2)出版社订单流程图4逻辑构造设计4.1局部E-R图(1)学校E_R图教教材材教教材材号号教材名出出版版社社出出版版社社号号出版社名(2)教材E_R图(3)出版社E_R图学校教材号学校与教材领用数量学校名Np教材订购生产订购数mq到货数量出版社出版社号出版社名4.2全局E-R图依照表格绘制E-R图如下:4.3数据字典数据基本存取单位是存储记录。有了逻辑构造后来,就可以设计存储记录构造,一种存储记录可以与各种逻辑记录相相应。存储记录就涉及记录构成,数据项类型,长度及其她约束条件。经分析可知其相应关系模式:(1)出版社(出版社号、教材号、出版社名、库存量)(2)订购表(教材号、学校号、出版社号、订购数量、到货数量,领用数量)(3)教材(教材号、教材名)(4)学校(学校号、学校名)名称数据类型与否为空学校号Int否学校名nchar(10)否名称数据类型与否为空教材号Int否教材名nchar(10)否涉及表如下:(1)出版社表(以出版社号、教材号为主键)名称数据类型与否为空出版社号int否教材号int否出版社名nchar(10)否库存量int是(2)订购表(教材号、学校号、出版社号为主键)名称数据类型与否为空教材号Int否出版社号Int否学校号Int否订购数量Int否领用数量Int是到货数量Int是(3)学校表(学校号为主键)(4)教材表(教材号为主键)4.4关系图5物理构造设计物理构造设计是为逻辑数据模型选用一种最适合应用环境物理构造,将逻辑构造设计中表用SQL语句创立出来。5.1创立存储过程(1)创立存储过程查询输入学校号,输出该学校到货状况--创立存储过程--输入学校号,输出该学校到货状况use高校教材管理ifexists(selectnamefromsysobjectswherename='pro_1'andTYPE='p')dropprocedurepro_1goCreateprocedurepro_1@学校号_inintAsSelect*From订购表where学校号=@学校号_in--验证execpro_1'101'5.2创立触发器--创立触发器--(1)订购教材时,订购数量要不大于库存量,并且修改库存量use高校教材管理ifexists(selectnamefromsysobjectswherename='tri_1'andTYPE='tr')droptriggertri_1goCreatetriggertri_1on订购表Forupdate,insertAsif(select订购数量frominserted)(select库存量from出版社表where出版社号=(select出版社号frominserted)and教材号=(select教材号frominserted))beginprint'库存数量局限性'rollbacktransactionendelseprint'订购成功'update出版社表set库存量=库存量-(select订购数量frominserted)where出版社号=(select出版社号frominserted)and教材号=(select教材号frominserted)select库存量from出版社表where出版社号=(select出版社号frominserted)and教材号=(select教材号frominserted)go--验证修改不成功案例update订购表set订购数量=300where出版社号=2and教材号=11--验证插入不成功insertinto订购表values(12,102,3,300,0,0)--修改成功update订购表set订购数量=10where出版社号=2and教材号=11--插入成功insertinto订购表values(12,102,3,10,0,0)5.3数据库备份与恢复--数据库备份use高校教材管理backupdatabasezyjstodisk='D:\508122武杰\备份'withinitgo--数据库恢复use高校教材管理--(或更改为master)restoredatabasezyjsfromdisk='D:\508122武杰\备份'withrecoverygo5.4SQL语句1.--新建一种表--学校表use高校教材管理gocreatetable学校表(学校号intnotnull,学校名nchar(10)notnull)2.--创立视图--创立订购表视图use高校教材管理gocreateviewview_订购asselect*from订购表3.--添加记录--向订购表添加一条记录insertinto订购表values(11,101,2,100,0,0)4.--修改记录--把订购表教材号为,学校号为,出版社号为到货数量改为Update订购表set到货数量=20where教材号=11and学校号=100and出版社号=15.--删除记录--删除出版社表出版社号=1并且教材号=13记录Deletefrom出版社表where出版社号=1and教材号=136.--查询记录--查询到货数量=0学校名select学校名from学校表where学校号=(select学校号from订购表where到货数量=0)7.-创立索引--为用人单位表在单位编号上按降序建立聚簇索引ind_单位编号use高校教材管理gocreateclusteredindexind_学校号on订购表(学校号desc)6、总结在完毕高校教材管理课程设计针对系统进行了需求分析、逻辑构造设计、物理设计、加载数据、功能设计(事物设计),程序设计、据库分析与设计;然后画出E-R图并运用T-SQL语句完毕有关操作。在SQl语句编写实现操作中结识到能掌握SQL原则语句是极为重要,在公司管理器和查询分析器中实现相似效果不同操作。此课程设计—高校教材管理系统以高校教材管理功能为基本,涵盖了出版社管理、教材管理、订购管理、库存管理各种方面,是高校教材实现基本数据库实现,但对于复杂高校教材问题我设计仅是冰山一角,但愿在后来学习中能完善!通过本次课程设计更进一步理解了SQLServer中关于基本操作。例如:表、视图创立、信息插入、修改、删除,存储过程、触发器有关操作等。同步对课本知识有了一种比较整体掌握。同样,在本次课程设计学习实践中浮现了许多问题,是我很苦恼,但是通过自我学习实践与请教教师同窗,收获了诸多,涉及思路与技术问题。通过教师指引,我修改后自我感觉比之前有了进步,但是,针对于此教材管理系统设计,还欠缺诸多,由于时间与能力有限,关于学校教师与学生教材状况未能体现出,此后还须更加努力。参照文献1.王珊陈红著《数据库系统原理教程》.北京:清华大学出版社.1998.72.王珊.陈红.文继荣著.《数据库与数据库管理系统》.北京:电子工业出版社.19953.王珊,萨师煊.《数据库系统概论》.北京:高等教诲出版社,4.施伯乐,丁宝康.《数据库系统教程》.北京:高等教诲出版社,