《数据库课程设计书店管理系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计书店管理系统.doc(30页珍藏版)》请在三一办公上搜索。
1、1 引言计算机技术作为现代科学技术的基础和核心,已经而且将继续对人类文明社会的进步与发展产生深刻影响。在我们生活的21世纪里计算机技术已经在各行各业中发挥着不可替代的作用。当前越来越多的商业、企事业单位已经将计算机技术应用于日常的管理工作。科学的运用计算机技术进行管理工作不仅可以使管理工作规范化、系统化、自动化而且可以节省相当的人力、物力。它能够使用户的管理工作走上良性运转轨道,从而为其快速发展奠定基础。因此各单位对与本行业相关管理软件的需求也十分迫切。管理信息系统(MIS, Management Information System)是一个由人和计算机等组成的能够提供信息以支持一个组织机构内
2、部的作业,管理、分析和决策职能的系统。进、销、存的管理是企业自身管理信息系统的重要组成部分。1.1 本论文的目标与任务本文以书店为例,对书店图书的进、销、存管理信息系统进行了分析和设计,重点是对库存子系统进行了讨论。库存管理是商场运营的基础,它将采购管理和销售管理链接起来共同组成一个完整的进、销、存管理系统。该系统可以帮助图书仓库管理人员对库存商品进行详尽、全面地控制和管理,提供的各种库存报表和库存分析可以为管理者的决策提供依据,从而实现降低库存和减少资金占用,避免图书积压或短缺,保证图书经营的正常进行。2 需求分析需求分析的定义是:在管理信息系统开发生命周期中系统详细调查阶段的各项活动和方法
3、。需求分析的目标是:按照系统规划原则在业务系统项目的范围内,具体明确系统开发的目标和用户的信息要求。通过对现行系统的管理水平、原始数据的精确程度、规章制度是否齐全和切实可行、管理人员对开发新系统的需求等内容的详细调查,从而获得软件开发的基础,确定总体设计的限制条件,确认软件测试的具体要求,定义详细的功能模块,以求达到协助系统开发的根本目的。在需求分析中,主要采用业务流程图、数据流程图、数据字典等工具进行描述和分析。2.1目标需求分析简单地说就是分析用户的要求。需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段原设计,并影响到设计结果是否合理和实用
4、。2.2 任务目前市面上流行的进销存管理系统不少。但是,对于书店图书的进销存系统来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能同时满足进销存分析管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的图书进销存管理系统。 该系统有售书管理模块、出库管理模块、库存管理模块、订书管理模块、入库管理模块和数据统计分析模块六部分组成,可以完成图书的进货、出货、查询等基本操作,完成阶段的销售情况、财务利润等信息。通过对基本操作的查询,用户可以掌握图书受欢迎情况,并能够对图书情况进行统计,从而适应市场的需求进行规划决策。2.3市场调查通过对现在流行的各种进销存软件的分析,
5、我们发现市场上的软件过于繁琐,操作比较复杂,而其中软件的许多功能不被小型企业所采用,造成软件冗余量大。图书进销存管理系统设计的总体目标是通过对销售、订单、库存的管理,及时准确了解销售、库存等综合情况,以便为管理者做出准确的判断提供依据。并通过图书进销存数据的分析,为管理及决策人员提供库存资金占用情况、图书库存情况。图书进销存管理系统的使用者要求系统具有良好的可靠性和可操作性,它的各种基本的操作容易为管理者所掌握,有较好的完全性,并要求系统具有高效率,易维护,可移植性较好等特点,我们据此展开分析。2.4 业务流程图业务流程图是一种表明系统内各个单位、人员之间业务关系、作业顺序和管理信息流动的流程
6、图,通过它能够使分析人员找出业务流程中的不合理迂回等。业务流程图的层次简单,可读性强;图中采用系统外部实体、单据报表账目、数据流、处理四种符号来表示各项内容。具体的相关符号说明如下:通过对书店的处理内容、处理顺序、处理细节和处理要求等各环节的调查和分析,弄清各个环节所需要的信息内容、信息来源、流经取向、处理方法、计算方法、提供信息的时间和信息表示形态(报表、表单、表格、输入输出内容、屏幕显示)等,并且把相关的调查结果用“业务流程图”表示出来,如图2.4.1所示。2.5 数据流程图在上一节中使用了业务流程图来描述管理业务虽然形象的表达了信息的流动和存储状况,但是仍旧没有完全脱离一些物质要素,而只
7、是仅仅得到了一个现行系统的物理模型。为了用计算机对信息进行管理,必须舍去物质,抽象出信息流,详细调查数据及数据流程。数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以用少数几种符号综合的反映出信息在系统中的流动、处理和存储情况。根据上面业务流程图的描述,从系统的科学性、管理的合理性、实际运行的可行性角度出发,自顶向下对系统进行分解,导出了图书管理系统的系统关联图、系统顶层图和系统分解图。数据流程图有外部实体、处理(数据加工)、数据存储、数据流四个部分组成。他们的符号表示如下:2.5.1顶层数据流程图由业务流程图确定系统开发的外部实体即系统数据的来源与去处,从而确定了整个系统的外部实
8、体和数据流,把系统作为一个处理环节,由此可绘出该图书进销存系统的顶层数据流程图(顶层DFD图),如图2.5.1所示。顶层数据流程图2.5.2数据流程图细化确定系统的主要处理功能,可以将系统分为售书管理、出库管理、库存管理、订书管理、入库管理和数据统计分析六部分。再确定各个输入和输出的数据流的以及与之相关的数据结构,为各个数据流、加工环节命名并编码,从而得到图书进销存系统的第一层数据流程图,如图2.5.2所示。第一层数据流程图2.5.3系统流程图分解将第一层流程图分解可得到系统分解图。其中某些数据项处理可分解为多个处理过程。在本系统中有售书管理模块、盘存管理模块、订书管理模块、进货管理模块。每一
9、部分都可分解为第二层流程图。具体分解情况如下:1) 进货管理模块P12) 盘存管理模块P23) 售书管理模块P32.6数据字典数据流程图表达了数据和处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典在数据库设计中占有很重要的地位。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。具体数据字典内容见附录1。3 概念结构设计在进行数据库设计时,是先将现实世界中的客观对象抽象为不依赖任何具体
10、机器的信息系统,数据库概念设计的目标就是要产生反映企业组织信息需求的数据库概念结构,即概念模型,而后再把概念模型转化为具体机器上计算机信息管理系统支持的相关模型。概念模式是独立与数据库逻辑结构,独立与支持数据库的DBMS,不依赖于计算机系统的。概念模型是表达概念设计结果的工具。它应该能够真实、充分地反映现实世界中事物和事物之间的联系;应该简洁、明晰、独立于机器,容易理解,方便数据库设计人员和应用人员进行交流;应该易于变动,便于修改;应该很容易向关系、层次或网状等各种数据模型转变,方便地导出与DBMS有关的逻辑模型。从而使概念模型成为现实世界到机器世界的一个过渡的中间层次。概念模型有很多模型,其
11、中最常用的方法之一是“实体联系模型”(entity relationship model),即使用E-R图来描述某一组织的概念模型。这个阶段的目标即抽象出本系统的概念模型,为下一步做准备。该阶段的任务为采用自下而上的方法抽象出各子模块的E-R图,再通过合并的方法做到各子系统实体、属性、联系统一,最终形成系统的全局E-R图。3.1概念模型设计E-R图是直观表示概念模型的工具,在图中有四个基本成分:1) 矩 形 框:表示实体类型(考虑问题的对象);2) 菱 形 框:表示联系类型(实体间的联系);3) 椭圆形框:表示实体类型和联系类型的属性;4) 直线:联系类型与涉及的实体类型之间以直线连接,并在直
12、线部标上联系的种类(1:1,1:N,M:N)。具体图示如下:3.3 逻辑设计逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型符合的逻辑结构。本次采用的DBMS为SQL SERVER 2000。根据SQL SERVER 2000的特点,数据模型为关系数据模型。3.3.1 概念设计的目标与任务概念设计阶段的主要任务有:(1)将E-R模型转换为关系模型,确定关系模式的属性和码。(2)利用范式理论对现有数据模型进行优化。(3)完成数据库模式定义描述,包括各模式的逻辑结构定义、关系的完整性和安全性等内容。(4)设计用户子模式视图设计,完成适合不同用户的子模式设
13、计。3.3.2 概念设计一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。1将E-R模型转换为关系模型转换原则:一个1:1联系可以转换为一个独立的关系,也可以与任意一段对应的关系模式合并。如果转化为一个独立的关系模式,则与该联系相连的各个实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一个实体对应的关系合并,则需要在该关系模式的属性中加入另一个关系的主码和联系本身的属性。一个m:n的联系可以转化为一个单独的关系模式,这个单独的关系模式的主码是两端实体的码,再加上联系的属性。一个1:n联系可以转化为一个独立的关系模式,也可以与n端
14、的关系模式合并作如果与n端的关系模式合并,在n端的关系模式中加上另一端关系的码和联系属性。根据以上规则,本系统的E-R模型向关系模型转换如下(其中关系的码用下划线标出):购书单(购书单编号,图书名称,图书数量,购书日期,购书费用)购书(购书单编号,图书编号,图书名称,购书数量,购书费用)退书单(退书单编号,图书名称,图书数量)退书(退书单编号,图书编号,图书名称,退书数量)图书(图书编号,图书名称,供应商,单价,作者)供应商(供应商号,供应商名称,地址,邮编,电话)供应(供应商编号,图书编号,供应数量)仓库管理员(仓库管理员编号,仓库管理员姓名,密码)仓库(编号,面积) 存储(仓库编号,图书编
15、号,入库日期,库存数量)2 数据模型的优化(1)原则:一事一地;(2)方法:垂直分解法;(3)步骤:a 根据语义要求,观察各关系中的属性是否可分解,从而判断是否满足1NF;b分析主属性对非主属性是否存在部分函数依赖,从而判断是否满足2NF;c分析主属性对非主属性是否存在传递函数依赖,从而判断是否满足3NF;d分析是否无损分解,是否保持函数依赖关系;分析过程:3.模式定义关系模式的定义包括各模式的逻辑结构定义、关系的完整性和安全性等内容。表2-5 关系模式汇总编号关系名称模式说明T1ShopList(详见附录11)T2Supply(详见附录12)T3Supplier(详见附录13)T4Adm(详
16、见附录14)T5WareHouse(详见附录15)T6Store(详见附录16)T7Book(详见附录17)T8ReturnList(详见附录18)T9Buy(详见附录19)T10Return(详见附录110)3.4用户子模式视图设计对于购书单这一关系模式,由于顾客和管理者都需要知道其中的各个属性,故只需要建立一个视图:购书单(图书编号,购书单编号,购书数量,购书日期)购书者可以在购书小票中看到其中的各个属性,而管理者则可以查询每个购书单所购图书的详细信息以及购书日期、购书数量等。在图书关系上,可以建立两个视图:为一般用户建立的视图:图书1(名称,作者,出版社,单价,出版日期,备注)为管理者建
17、立的视图:图书(图书编号,供应商编号,名称,作者,出版社,单价,出版日期,所存仓库号,备注)用户视图中只包含允许用户查询的属性,而管理者则可以查询其所有属性,重要的是供应商和所存仓库号。类似地可以得到各个关系模式的基于不同对象的视图,如表5.3.1所示。表4.3.1 视图分类用户对象视图描述作用顾客、管理者购书单(图书编号,购书单编号,购书数量,购书日期 )用于顾客和管理员对购书情况的查询顾客图书1(名称,作者,出版社,单价)用于一般用户查询图书的详细信息管理者图书2(图书编号,供应商编号,名称,作者,单价,所存仓库号)用于管理者对图书的详细信息查询管理者供应商(供应商编号,姓名,地址,联系电
18、话,邮政编码)用于管理者对供应商的信息查询管理者仓库(仓库编号,面积)用于管理者查询仓库信息库管员库管员(所管理仓库号,名称,密码)用于库管员对自己情况的查询库管员存放(仓库编号,日期,数量)用于库管员和管理员对存放情况的查询管理者供应(供应商编号,供应量)用于管理者对供应情况的查询3.4.1功能模块图图书进销存系统功能模块图5 物理结构设计数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的计算机系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。目标与任务:本阶段要完成的任务是为关系模式选择取存方法和设计关系索引等数据库文件的物
19、理存储结构5.1 数据存取这一阶段的任务是建立索引。建立索引的目的是为了更高速度的访问对应的属性列或是属性组。可以在一个基本表上建立索引,以提供多种存储路径,加快访问速度。5.1.1 建立索引的原则建立索引一般有以下三个原则:(1) 如果一个(或一组)属性经常在查询条件中出现,则考虑在这个(或这组)属性上建立索引。(2) 如果一个经常作为最大值和最小值等聚集函数的参数,则考虑在这个属性上建立索引。(3) 如果一个(或一组)属性经常在连接操作的连接条件中出现,则考虑在这个(或这组)属性上建立索引。5.1.2 建立索引根据系统和用户的需要,由于图书编号、购书单编号、供应商编号和仓库编号等几个属性查
20、询操作比较频繁,故需对其所在的表建立唯一索引,如表5.1.2-01所示。表5.1.2-01 唯一索引表所在表名索引名称索引类型建立引用的基项图书信息表BookInfo1UniqueBkID客户购书表CBuyInfo1UniqueBuyID供应商信息表SupInfoUniqueSID仓库信息表WareInfo1UniqueWID而购书数量、入库日期、出库日期、进购图书数量、图书进购日期、购书日期、图书出版社等属性是经常按顺序排列查询,故需建立聚簇索引,如表5.1.2-02所示。表5.1.2-02 聚簇索引表所在表名索引名称索引类型建立引用的基项客户购书表CBuyInfo2聚簇索引BuyNum+B
21、uyDay库存图书表WareBInfo2聚簇索引InTime+OutTime进货表BuyInfo聚簇索引InNum+InTime5.2 程序流程图管理信息系统处理方式的合理选择,是一个处理过程的设计问题。选择处理方式实际上就是根据系统的任务、目标和环境条件,合理选择信息活动的形式及其具体方法。在绘制流程图时使用的符号如下:由此可得本系统的程序流程图,如图5.2.1所示。图5.2.1 系统程序流程图6 数据库实施在上一节数据库的物理设计之后,就要用RDBMS提供的数据定义和其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式。然后就可以组织
22、数据入库了,这就是数据库实施阶段。数据库实施阶段的任务是完成数据的载入及应用程序的编码和调试。6.1 数据库的实现1)建立数据库附录附录11.1数据项表1.1.1图书信息表数据项编号名称名称含义数据类型长度说明DI-1BoID图书编号char8DI-2Boname图书名char6DI-3SID供应商编号char10DI-4Bowriter图书作者char9DI-5Boprice图书单价Float6表1.1.2客户购书表数据项编号名称名称含义数据类型长度说明DI-1BuyID购书单编号char9DI-2BoID图书编号char8DI-3BuyNum购书数量intDI-4BuyDay购书日期Dat
23、eTimeDI-5BuyMoney购书费用Float表1.1.3 库存图书表数据项编号名称名称含义数据类型长度说明DI-1BoID图书编号char8DI-2InTime入库日期DateTimeDI-3Snum库存数量int6DI-4OutTime出库日期DateTime表1.1.4 进货表数据项编号名称名称含义数据类型长度说明DI-1BoID图书编号char8DI-2SID供应商编号char10DI-3InTime购进图书日期DateTimeDI-4InNum购进图书数量int8表1.1.5仓库管理员信息表数据项编号名称名称含义数据类型长度说明DI-1AdID仓库管理员编号char8DI-2A
24、dName仓库管理员姓名char5DI-3AdPaswd密码char6表1.1.6 供应商信息表数据项编号名称名称含义数据类型长度说明DI-1SID供应商编号char10DI-2Sname供应商名称char8DI-3Saddr供应商地址char8DI-4Stel供应商电话char11DI-5Spost邮政编码char8表1.1.7仓库信息表数据项编号名称名称含义数据类型长度说明DI-1WID仓库编号char3DI-2Warea仓库面积intDI-3AdID仓库管理员编号char81.2数据结构DS-1数据结构名称含义说明组成DS-2图书描述一本图书的基本信息图书编号,图书名,供应商编号,图书作
25、者,图书单价DS-3购书描述客户购书的基本信息购书单编号,图书编号,购书数量,购书日期,购书费用DS-4库存图书描述库存图书的详细数据图书编号,入库日期,库存数量DS-5进货描述进货的基本信息图书编号,供应商编号,购进图书日期,购书时间DS-6仓库管理员描述一位仓库管理者的基本信息仓库管理员编号,仓库管理员姓名,仓库管理员开仓密码DS-7供应商描述供应商的基本信息供应商编号,供应商名称,所在地址,供应商电话,邮政编码1.3数据流数据流编号数据流名称简述数据流来源数据流去向数据流组成数据流量高峰流量F1补货单仓库管理员开出的补货单仓库管理员主管领导图书编码+图书名称+数量+单价+订单号30份/月
26、50份/月F2采购单主管领导批准的补货单主管领导采购员图书编码+图书名称+图书数量+采购单号30份/月50份/月F3发货单供应商开出的发货单供应商进货模块图书编码+图书名称+图书数量+单价+发货单号+供应商30份/月50份/月F4购书单顾客向书店购图书的购书单顾客书店图书编号+图书名称+图书数量190份/月320份/月F5销售单书店发出的销售单书店顾客图书编号+图书名称+图书数量+图书单价+销售单号200份/月320份/月F6未批准的补货单主管领导未批准的补货单主管领导仓库管理员图书编号+图书名称+图书数量+未批准说明5份/月10份/月F7入库单仓库管理员开出的入库单进货模块库存台帐图书编号+
27、图书名称+图书数量+入库日期+单价+供应商30份/月50份/月1.4外部实体外部实体编号外部实体名称简述外部实体组成输入的数据流输出的数据流E1采购员进货的人员采购员编号+姓名+电话+地址采购单E2顾客购买商品的顾客顾客编号+姓名+地址+电话销售单购书单E3供应商提供商品的直接厂家供应商编号+名称+地址+电话+邮编采购单发货单E4仓库管理员管理进货销售仓库管理员编号+姓名+电话+地址进货单补货单E5主管领导审批订单姓名+电话+地址补货单批准/不批准的补货单1.5处理逻辑处理逻辑编号处理逻辑名称简述P1.1审核主管领导对补货单进行审核P1.2验货采购部对货品进行检验P1.3入库检验通过的商品入库
28、P2.1库存图书统计统计仓库现有的图书信息P2.2盘存决定对热销图书适量加货,对积压图书打折销售P3.1销售货物队顾客购物情况进行开单P3.2退单确认对顾客的退货单进行审核P3.3退货根据确认的退单进行退货1.6数据存储数据存储编号数据存储名称简述数据存储组成相关联的处理S1库存帐台商品入库、出库、退货后应修改当前库存量商品编码+商品名称+当前库存量+P1.3+P2.1+P2.2+P3.1+p3.3S2流水账如库出库及退货的流水帐记录类型+商品编码+商品名称+数量+单价+开单日期+单号P1.3+P1.4+P2.1+P2.2+P3.1+P3.3附录2关系模式的说明:1-1购书单关系的说明属性名别
29、名数据类型取值范围是否为主属性是否为外键完整性要求BuyID购书单编号char(9)是Not nullBkname图书名称char(8)Not nullBknum购书数量intBuyDay购书日期DateTimeBuyMoney总费用Float1-2供应关系的说明属性名别名数据类型取值范围是否为主属性是否为外键完整性要求SupID供应编号char(8)是Not nullBkID进货图书编号char(8)Not nullSID供应商编号char(10)nullInTime进货日期DateTimenullInNum进货总数intnull1-3供应商关系的说明属性名别名数据类型取值范围是否为主属性是
30、否为外键完整性要求SID供应商编号char(10)是Not nullSname供应商名称char(8)nullSaddr供应商地址char(8)nullStel供应商电话char(12)nullSpost供应商邮编char(8)null1-4仓库管理员关系的说明属性名别名数据类型取值范围是否为主属性是否为外键完整性要求AdID仓库管理员编号char(8)是Not nullAdName仓库管理员姓名char(5)nullAdPaswd密码char(6)null1-5仓库关系的说明属性名别名数据类型取值范围是否为主属性是否为外键完整性要求WID仓库编号char(3)是Not nullWarea仓库
31、面积intnullAdID仓库管理员编号char(8)null1-6存储关系的说明属性名别名数据类型取值范围是否为主属性是否为外键完整性要求WID仓库编号char(3)是Not nullBkID图书编号char(8)是Not nullInTime入库日期DateTimenullSnum库存数量intnullOutTime出库日期DateTimenull1-7图书关系的说明属性名别名数据类型取值范围是否为主属性是否为外键完整性要求BkID图书编号char(8)是Not nullBkname图书名称char(8)Not nullSID供应商编号char(10)nullBkwriter图书作者cha
32、r(12)nullBkprice图书单价Floatnull存储过程的测试查询存储过程查询管理员信息根据作者查询图书信息根据日期查询销售信息根据入库日期查询仓存储信息根据仓库管理员姓名查询仓库图书信息根据图书查询供应商信息存储功能插入功能的验证存储功能删除功能的验证存储功能更新功能的验证触发器功能的验证进货时增加货物的库存量销售货物时减少货物的库存量SQL语句-建立数据库create database BookStore-创建购书单表create table ShopList(BuyID char(9) primary key,Bkname char(8) not null,Bknum int,
33、BuyDay DateTime,BuyMoney Float);-创建供应表create table Supply(SupID char(8) primary key,BkID char(10),SID char(10),InTime DateTime,InNum int);-创建图书表create table Book(BkID char(8) primary key,Bkname char(8) not null,SID char(10),Bkwriter char(12),Bkprice Float,PublishDate DateTime);-创建供应商表create table Su
34、pplier(SID char(10) primary key,Sname char(8),Saddr char(8),Stel char(12),Spost char(8);-创建仓库管理员表create table Adm(AdID char(8) primary key,AdName char(5),AdPaswd char(6);-创建仓库表create table WareHouse(WID char(3) primary key,Warea int,AdID char(8);-创建存储表create table Store(WID char(3),BkID char(8),InTi
35、me DateTime,Snum int,OutTime DateTime,primary key(WID,BkID),foreign key(WID)references WareHouse(WID),foreign key(BkID)references Book(BkID);-创建退书单表create table ReturnList(retnID char(8) primary key,Bkname char(8) not null,retnNum int);-创建退书表create table ReturnBook(retnID char(8),BkID char(8),Bkname
36、 char(8),retnNum int,primary key(retnID,BkID),foreign key(retnID)references ReturnList(retnID),foreign key(BkID)references Book(BkID);-创建购书表create table BuyBook(BuyID char(9),BkID char(8),Bkname char(8),Bknum int,BuyMoney Float,primary key(BuyID,BkID),foreign key(BuyID)references ShopList(BuyID),for
37、eign key(BkID)references Book(BkID);-建立视图-建立购书单视图create view ShopList_viewasselect BuyID,Bkname,Bknum,BuyDayfrom ShopList-建立供顾客查询图书信息的视图create view BuyBook_viewasselect Bkname,Bkwriter,Bkprice,SIDfrom Book-建立供管理者查询图书信息的视图create view AdmBook_viewasselect Book.BkID,SID,Bkname,Bkwriter,Bkprice,WIDfrom
38、Book,Storewhere Book.BkID=Store.BkID-建立查询供应商信息的视图create view AdmS_viewasselect SID,Sname,Saddr,Stel,Spostfrom Supplier-建立查询仓库信息的视图create view WareHos_viewasselect WID,Wareafrom WareHouse-建立查询仓库管理员的视图create view Adm_viewasselect WID,Adnamefrom Adm,WareHousewhere Adm.AdID=WareHouse.AdID-建立查询库存情况的视图cre
39、ate view Store_viewasselect WID,InTime,Snumfrom Store-建立查询供应关系的视图create view Sup_viewasselect SID,InNumfrom Supply-建立索引create unique index BookInfo1 on Book(BkID);create unique index CBuyInfo1 on ShopList(BuyID);create unique index SupInfo on Supplier(SID);create unique index WareInfo1 on WareHouse(
40、WID);-create clustered index CBuyInfo2 on ShopList(BkNum,BuyDay);-create clustered index WareBInfo2 on Store(InTime,OutTime);-create clustered index BuyInfo on Supply(InNum,InTime);建立查询的存储过程create procedure p1_query_AdmAdID char(8)asselect *from Admwhere AdID=AdIDcreate procedure p2_query_BookBkwrit
41、er char(12)asselect *from Bookwhere Bkwriter=Bkwritercreate procedure p3_query_ShopListBuyDay datetimeas select *from ShopListwhere BuyDay=BuyDaycreate procedure p4_query_StoreInTime datetimeasselect *from Storewhere InTime=InTime-根据仓库管理员姓名查询仓库图书信息create procedure p5_query_Ad_BookAdName char(5)asselect AdName,Book.BkID,Book.Bkname,Bkwriter,Store.Snumfrom Adm,Book,Store,WareHousewhere WareHouse.WID=Store.WID and Book.BkID=Store.BkID and AdName=AdNamecreate procedure p6_query_SupplierBk