您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 高校教材管理系统.doc
高校教材管理系统高校教材管理系统(13)高校教材管理系统1.题目要求:实现出版社、教材类型等的管理;实现教材的订购管理;实现教材的入库管理;实现教材的领用管理;创建规则实现教材的书号必须满足以ISBN开头,后跟10个数字的格式,比如:ISBN7302120363;创建触发器,实现教材入库和出库时自动修改库存数量;创建存储过程统计各种教材的订购、到货和发放数量;建立数据库相关表之间的参照完整性约束。2.设计基本要求:(1)仔细阅读题目要求,分析高校教材出现的问题做需求分析(2)结构设计,包括概念结构设计,逻辑结构设计和物理结构设计与高校教材管理相结合;(3)列出实体、联系及实体和联系的属性;(5)画出E-R图;E-R图转换成关系模式,并注明主码和外码;(6)建立直观的数据字典;(7)创建数据库,正确的SQL语句;(8)根据题目的要求写查询、存储过程、触发器等。3.设计过程:(1)问题描述:根据所学SQL知识对高校管理系统实现管理,主要实现出版社、教材类型管理,教材的订购、入库、领用管理。(2)需求分析a.出版社:(出版社编号,出版社名称)相应的约束条件及与教材的处理关系;b.教材:(教材编号,教材名称,教材类型,出版社,教材编号)教材编号的主键设置及与其他表的外键相关;c.发放情况:(教材号,发放数量)注意发放数量与库存量之间的关系(教材发放以后,库存量的数量随发放量递减规律);d.库存情况:(教材号,库存量)教材的发放量与库存量的关系(发放之前确定实际的库存量必须有足够的库存量);f.库存情况:(教材号,订购数量,到货数量)到货数量与库存量之间的关系(到货数量与库存数量的累加关系);(3)数据库系统功能设计:(4)概念结构设计(逻辑结构设计—采用ER图进行表示)a.局部ER图—出版社表高校教材管理系统出版社表信息管理发放表信息管理库存表信息管理教材表信息管理订购表信息管理添加查询修改删除b.局部ER图—教材发放表c.局部ER图—教材库存表d.局部ER图—教材表e.局部ER图—教材订购表整体ER图:(5)关系类型表:对SQL编程中使用到的项及类型的集中,方便编程及数据出错时检查。A.出版社表中的项、数据类型及相关作用出版社表(包含项)类型长度是否允许为空特别说明(主键)出版社intno外键出版社编号char16no发放订购教材出版社库存递减分发出版购买教材类型出版社名出版社编号教材名订购数量教材编号出版社库存量到货数量发放数量1MMNMFKB.发放表中的项、数据类型及相关作用发放表(包含项)类型长度是否允许为空特别说明(主键)教材号char14no主键发放数量floatnoC.库存表中的项、数据类型及相关作用库存表(包含项)类型长度是否允许为空特别说明(主键)教材号char14no主键库存量floatnoD.教材表中的项、数据类型及相关作用教材表(包含项)类型长度是否允许为空特别说明(主键)教材号char14no主键教材名char18no教材类型char10no出版社intnoE.订购表中的项、数据类型及相关作用订购表(包含项)类型长度是否允许为空特别说明(主键)教材号char14no主键订购数量floatyes到货数量flaotyes4数据库实现(1)创建基本表SQL相关语句的编写:a.出版社表的SQL语句:CREATETABLE[出版社表]([出版社编号][int]NOTNULL,[出版社][char](16)COLLATEChinese_PRC_CI_ASNOTNULL,CONSTRAINT[PK_出版社]PRIMARYKEYCLUSTERED([出版社编号])ON[PRIMARY])ON[PRIMARY]GOb.发放表的SQL语句:CREATETABLE[发放表]([教材号][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[发放数量][float]NOTNULL,CONSTRAINT[PK_发放表]PRIMARYKEYCLUSTERED([教材号])ON[PRIMARY],CONSTRAINT[FK_发放表_订购表]FOREIGNKEY([教材号])REFERENCES[订购表]([教材号]))ON[PRIMARY]GOc.库存表的SQL语句:CREATETABLE[库存表]([教材号][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[库存量][float]NOTNULL,CONSTRAINT[PK_库存表]PRIMARYKEYCLUSTERED([教材号])ON[PRIMARY],CONSTRAINT[FK_库存表_教材表]FOREIGNKEY([教材号])REFERENCES[教材表]([教材号]))ON[PRIMARY]GOd.教材表的SQL语句:CREATETABLE[教材表]([教材号][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[教材名][char](18)COLLATEChinese_PRC_CI_ASNOTNULL,[教材类型][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,[出版社][int]NOTNULL,CONSTRAINT[PK_教材表]PRIMARYKEYCLUSTERED([教材号])ON[PRIMARY],CONSTRAINT[FK_教材表_出版社表]FOREIGNKEY([出版社])REFERENCES[出版社表]([出版社编号]))ON[PRIMARY]GOe.订购表的SQL语句:CREATETABLE[订购表]([教材号][char](14)COLLATEChinese_PRC_CI_ASNOTNULL,[订购数量][float]NULL,[到货数量][float]NULL,CONSTRAINT[PK_订购表]PRIMARYKEYCLUSTERED([教材号])ON[PRIMARY])ON[PRIMARY]GO(2)相关数据库管理要求的SQL语句:1.创建教材号的规则:createrulejcidas@valuelike'ISBN[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'2.把规则绑定到指定的列:sp_bindrule'jcid','教材表.[教材号]'3.创建触发器当订购教材到货的时候修改库存表中库存:createtriggerruon订购表forupdate,insertasupdate库存表set库存量=(库存量+(select到货数量frominserted))where库存表.教材号=(select教材号frominserted)4.创建触发器当发放教材时修改库存量createtriggerchuon发放表forupdate,insertasupdate库存表set库存量=(库存量-(select发放数量frominserted))where库存表.教材号=(select教材号frominserted)5.创建存储过程统计各种教材的订购到货发放数量createprocctasselect订购表.教材号,订购数量,到货数量,发放数量from订购表,发放表where订购表.教材号=发放表.教材号execct5.建立数据库相关表之间的参照完整性约束(1)创建发放表与教材表的教材号外键约束altertable发放表addconstraintfk_1foreignkey(教材号)references教材表(教材号)(2)创建库存表与教材表的教材号外键约束altertable库存表addconstraintfk_2foreignkey(教材号)references教材表(教材号)(3)创建订购表与教材表的教材号外键约束altertable订购表addconstraintfk_3foreignkey(教材号)references教材表(教材号)(4)创建出版社表与教材表的出版社外键约束altertable教材表addconstraintfk_4foreignkey(出版社)references出版社表(出版社)5.数据库数据添加高校教材管理数据添加,在企业管理器中进行添加相应的数据记录(设计中的表附在数据库13中)6.结论(1):在完成高校教材管理的课程设计针对系统进行了需求分析、逻辑结构设计、物理设计、加载数据、功能设计(事物设计),程序设计、据库分析与设计;然后画出E-R图并利用T-SQL语句完成相关的操作。在SQl的语句编写实现的操作中认识到能掌握SQL的标准语句是极为重要的,在企业管理器和查询分析器中实现相同效果的不同操作。此课程设计—高校教材管理系统以高校教材管理功能为基础,涵盖了出版社管理、教材管理、发放管理、库存管理和订购管理多个方面,是高校教材实现的基本数据库的实现,但对于复杂的高校教材问题我的设计仅是冰山一角,希望在以后的学习中能完善!(2):通过此次课程设计更深入的理解了SQLServer2000中的有关基本操作。例如:表、视图的创建、信息的插入、修改、删除,规则、存储过程、触发器的相关操作等。同时对课本知识有了一个比较整体的掌握。(3):在本学期的数据库的学习中对高校的教材管理系统的设计中学习到独立完成作业的重要,锻炼了在编写实际运用数据库的实现,深刻感受到计算机学习的实用性和未来工作的巨大信息,但是由于学习效果不佳,在一些问题的处理和考虑的方面存在很大的缺陷和漏洞,希望在进一步的学习中能更好处理好相关问题。
本文标题:高校教材管理系统.doc
链接地址:https://www.777doc.com/doc-4214567 .html