设备管理系统毕业设计(设计与代码实现).doc_第1页
设备管理系统毕业设计(设计与代码实现).doc_第2页
设备管理系统毕业设计(设计与代码实现).doc_第3页
设备管理系统毕业设计(设计与代码实现).doc_第4页
设备管理系统毕业设计(设计与代码实现).doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

摘 要数据库原理及应用课程设计是软件工程专业集中实践性环节之一,是学习完数据库概论课程后进行的一次全面的综合练习。其目的在于加深对数据库基础理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库及其应用系统是具有管理功能的计算机系统,而数据库原理及应用课程设计在开发应用程序中至关重要,合理的数据表结构不尽有利于软件的快速开发,而且有利于以后对软件的维护。目前,我国的科技水平高速发展,计算机作为今天使用最广的现代化工具已深入到各个领域,并且正在成为未来社会信息社会的重要支柱。在这样的大背景下,现代学校设备管理方式,资源建设等方面都发生了重大变化,这种变化表现在设备管理上,管理和服务平台发生的变化,设备管理工作不再是传统的手工操作,人工管理,而是全面实行计算机管理。一个简单的设备管理系统包括设备的信息、使用人员信息以及借用等信息,系统在XP平台上用SQL语言来编写实现。此系统功能分为面向使用人员和面向管理员两部分,其中使用人员可以进行借用、续借、归还和查询设备等操作,管理员可以完成设备和使用人员的信息的增加,删除和修改以及对使用人员借阅、续借、归还的确认、是否完好的确认。关键词:SQL语言;数据库设计;设备管理器设备管理器管理系统目 录1、需求分析 1.1、系统概述 1.2、需求分析过程 1.3、数据字典2、概念模式设计 2.1、实体 2.2、E-R图和视图集成3、逻辑模式设计 3.1、将E-R图转化为关系模式 3.2、数据模型的优化4、检查是否满足设计需要 4.1、检查是否满足用户需要5、其他数据库对象的考虑 5.1、建表5.2、触发器5.3、6、备份及恢复6.1、备份策略6.2、恢复策略1、 需求分析1.1 系统概要事业单位或公司里面有着大量的公共设备,这些设备就像图书馆里面的图书一样,需要一个专门的部门进行管理,而该部门需要一个专门的管理系统,才能很方便的进行各项操作。本系统可用来记录、浏览、查询学校里面公共设备的使用情况,从而方便管理员对设备的可视化管理,方便使用人员能快速的了解到自己所需设备的具体状况。1.2、需求分析过程 (1)、流程使用人员到设备管理处(网上也可以)查询所需设备,看看是否有满足自己需求的设备,如果有,则查询该设备是否存在于设备管理处,是否能使用,是否完好:如果在设备储备室,则管理员在系统中记录借用者的信息,从而确认借用者的身份,并且记录借出设备的相关信息。如果设备不在储备室,则通知借用人员设备无法提供。同样使用人员可以可以到网上进行查询,预定自己所需要的设备,然后到设备管理处领取设备。(2)、功能实现设备的查询、借出、归还、保存使用记录(包括使用人、设备管理员、使用设备是否完好等信息) (3)数据流图管理员查询和管理使用人员管理员借用记录借用修改归还记录修改归还用机记录(所有)设备存储借一,存减一还一,存加一存入管理管理存入使用者查询使用者查询可用设备/设备存放 自己的用机记录1.2、数据字典使用人员字典编号 char,姓名 char,身份证号码 nchar 20,性别 char,所属部门 nchar 20,职位char属性类型长度备注编号char10使用人员学校里面的编号姓名char10使用人员的姓名性别char2使用人员的性别职位char10使用人员的职位所属部门nchar20使用人员所属部门身份证号码nchar20 值班表管理人员编号 char,姓名 char,值班时间 datetime)属性类型长度备注管理人员编号char10姓名char10值班时间datetime8一个时间段损耗费用使用者编号 char,设备编号 char,使用者姓名char,设备名称 char,设备价格money,结算时间 datetime,原因 nvchar 50属性类型长度备注使用者编号char10设备编号nhar20使用者姓名char10设备名称nhar20设备价格money8结算时间datetime10原因nvchar50必须说明原因出借出借存档号 nchar 20,设备编号 char,设备名称 char,使用者编号 char,使用者姓名 char,使用者编号 nchar 20,管理员编号 char,管理员姓名 char,出借时间 datetime属性类型长度备注出借存档号nchar20设备编号nchar20设备名称char10使用者编号char10使用者姓名char10使用所属部门nchar20管理员编号Char10管理员姓名Char10出借时间datetime10归还归还存档号 nchar 20,设备编号 char,设备名称 char,归还时间 datetime,使用者编号 char,使用者姓名 char,管理员编号 char,管理员姓名 char属性类型长度备注归还存档号nchar20设备编号nhar20设备名称char10归还时间datetime10使用者编号nchar20使用者姓名char10管理员编号nhar20管理员姓名char10管理人员管理员编号 char,姓名 char,性别 char,身份证号 nchar 20,年龄 int,密码 char属性类型长度备注管理员编号char10姓名char10性别char2身份证号Nchar20年龄char10密码nchar20设备使用记录记录存档编号 nchar 20,使用者编号 char,使用者姓名 char,出借经手人编号 char,出借经手人姓名 char,归还经手人编号 char,归还经手人姓名 char,出借时间 datetime,归还时间 datetime,设备编号 char,设备名称 char属性类型长度备注记录存档编号nchar20使用者编号char10使用者姓名char10出借经手人char10出借经手人编号nchar20出借经手人姓名char10归还经手人编号nchar20归还经手人姓名Char10出借时间Datetime10归还时间Datetime10设备编号Nchar20设备名称char10设备设备编号 char,名称 char,型号 char,价值 money,状态 char属性类型长度备注设备编号nhar20型号nchar20价值money20状态char10表情设备是否完好设备存储设备存放室 int,设备编号 char,设备状态char属性类型长度备注设备存放室名称char10设备存放室编号Nchar20设备状态nchar20标明2、 概念模式设计2.1、实体使用人员、出借、归还、损耗、设备、设备存放、管理人员、设备使用记录、值班表 所有实体具体如下:1. 使用人员编号,姓名 ,身份证号码,性别,所属部门,职位使用人员编号身份证号码性别姓名所属部门职位2.值班表管理人员编号 ,姓名,值班时间值班表管理人员编号值班时间管理人员姓名3. 出借设备编号,设备名称,使用者编号,使用者姓名 ,使用者所属部门编号,管理员编号,管理员姓名,出借时间出借使用者编号使用者姓名设备编号设备名称管理员姓名使用者所属部门出借时间管理员编号4.归还设备编号,设备名称,归还时间,使用者编号,使用者姓名 ,管理员编号,管理员姓名归还使用者编号使用者姓名设备编号设备名称管理员姓名使用者所属部门归还时间管理员编号5.管理人员管理员编号 ,姓名 ,性别 ,身份证号,年龄,密码管理人员管理员编号姓名性别身份证号年龄密码6. 设备设备编号 ,名称 ,型号 ,价值 ,状态 设备设备编号名称型号价值状态7. 设备使用记录记录存档编号,使用者编号,使用者姓名,出借经手人编号,出借经手人姓名,归还经手人编号,归还经手人姓名,出借时间,归还时间,设备编号,设备名称设备使用记录使用人员编号出借经手人编号归还经手人编号出借时间归还时间设备编号归还经手人姓名设备名称使用人员姓名出借经手人姓名存档记录编号8. 损耗费用使用者编号,设备编号,使用者姓名,设备名称,金额,结算时间,原因损耗费用使用者编号使用者姓名设备编号设备名称金额结算时间原因9.设备存放室设备编号 ,设备名称 ,设备状态 设备存放设备状态设备名称设备编号2.2、E-R图与视图集成所有实体模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要支持所有实体模式,而且必须合理地表示一个完整、一致的数据库概念结构。1)确定公共实体类型为了给多个实体模式的合并提供开始合并的基础,首先要确定各局部结构中的公共实体类型。在这一步中我们仅根据实体类型名和键来认定公共实体类型。一般把同名实体类型作为公共实体类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。2)将实体通过键码连接起来构成局部E-R图3)消除冲突冲突分为三类:属性冲突、结构冲突、命名冲突。设计全局ER模式的目的不在于把若干局部ER模式形式上合并为一个ER模式,而在于消除冲突,使之成为能够被所有用户共同理解和接受的同一的概念模型。4)全局ER模式的优化在得到全局ER模式后,为了提高数据库系统的效率,还应进一步依据处理需求对ER模式进行优化。一个好的全局ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。综上所述,“设备管理器”的全局ER模式如下图所示。存放设备存放记录设备使用记录值班表值班管理人员损耗费用归还使用人员设备出借管理查询 系统全局E-R图(A-4)3、逻辑模式设计3.1将E-R图转化为关系模式由于概念设计的结果是ER图,DBMS一般采用关系模型,因此数据库的逻辑设计过程就是把ER图转化为关系模式的过程。由于关系模型所具有的优点,逻辑设计可以充分运用关系数据库规范化理论,使设计过程形式化地进行。设计结果是一组关系模式的定义。将图A-4总体概念结构E-R图转化成关系模型。1. 使用人员编号,姓名 ,身份证号码,性别,所属部门,职位2.值班表管理人员编号 ,姓名,值班时间3. 出借出借存档号,设备编号,设备名称,使用者编号,使用者姓名 ,使用者所属部门编号,管理员编号,管理员姓名,出借时间4.归还归还存档号 20,设备编号,设备名称,归还时间,使用者编号,使用者姓名 ,管理员编号,管理员姓名5.管理人员管理员编号 ,姓名 ,性别 ,身份证号,年龄,密码6. 设备设备编号 ,名称 ,型号 ,价值 ,状态 7. 设备使用记录记录存档编号,使用者编号,使用者姓名,出借经手人编号,出借经手人姓名,归还经手人编号,归还经手人姓名,出借时间,归还时间,设备编号,设备名称8. 损耗费用使用者编号,设备编号,使用者姓名,设备名称,金额,结算时间,原因9.设备存放设备编号 ,设备名称 ,设备状态 3.2数据模型的优化 将转化的关系模式进行优化,最终达到第三范式。优化后的关系模式如下:1. 使用人员编号,姓名 ,身份证号码,性别,所属部门,职位2.值班表管理人员编号 ,姓名,值班时间3. 出借设备编号,设备名称,使用者编号,使用者姓名 ,使用者所属部门编号,管理员编号,管理员姓名,出借时间4.归还设备编号,设备名称,归还时间,使用者编号,使用者姓名 ,管理员编号,管理员姓名5.管理人员管理员编号 ,姓名 ,性别 ,身份证号,年龄,密码6. 设备设备编号 ,名称 ,型号 ,价值 ,状态 7. 设备使用记录记录存档编号,使用者编号,使用者姓名,出借经手人编号,出借经手人姓名,归还经手人编号,归还经手人姓名,出借时间,归还时间,设备编号,设备名称8. 损耗费用使用者编号,设备编号,使用者姓名,设备名称,金额,结算时间,原因9.设备存放设备编号 ,设备名称 ,设备状态 4检验是否满足用户需求4.1调查用户需求使用者需求(1) 借用功能:能够方便的借用设备、续借设备、归还设备(2) 查询功能:1)按设备编号查找设备2)按设备名称名称查找设备3)能够使用者能按照自己的编号查询自己的状态信息4)能查询设备的状态设备管理需求(1)使用者注册功能:能够对新的使用者进行登记,或注销使用者的信息。(既是录入设备使用者的信息)(2)设备录入功能:能够将新到的设备信息输入到系统的设备信息库中。(3)统计功能:1)按设备编号统计设备数量2)按设备名称统计数量3)能查询、删除、修改设备的状态和使用人员的信息5其它数据库对象(物理数据库设计)的考虑5.1建表建表代码如下:CREATE TABLE dbo.使用人员 (编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,身份证号码 nchar (20) COLLATE Chinese_PRC_CI_AS NULL ,性别 char (2) COLLATE Chinese_PRC_CI_AS NULL ,所属部门 nchar (20) COLLATE Chinese_PRC_CI_AS NULL ,职位 char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGOCREATE TABLE dbo.值班表 (管理人员编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,值班时间 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGOCREATE TABLE dbo.出借 (使用者编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,使用者姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,使用者所属部门 nchar (20) COLLATE Chinese_PRC_CI_AS NULL ,管理员编号 char (10) COLLATE Chinese_PRC_CI_AS NULL ,管理员姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,出借时间 datetime NULL ,设备编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,设备名称 char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGOCREATE TABLE dbo.归还 (归还时间 datetime NOT NULL ,使用者编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,管理员编号 char (10) COLLATE Chinese_PRC_CI_AS NULL ,使用者姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,管理员姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,使用者所属部门 char (10) COLLATE Chinese_PRC_CI_AS NULL ,设备编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,设备名称 char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGOCREATE TABLE dbo.损耗费用 (使用者编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,使用者姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,设备编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,设备名称 char (10) COLLATE Chinese_PRC_CI_AS NULL ,结算时间 datetime NULL ,金额 money NULL ,原因 nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGOCREATE TABLE dbo.管理人员 (管理员编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,姓名 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,性别 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,身份证号 nchar (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,年龄 int NULL ,密码 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGOCREATE TABLE dbo.设备 (设备编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,名称 char (10) COLLATE Chinese_PRC_CI_AS NULL ,型号 char (10) COLLATE Chinese_PRC_CI_AS NULL ,价值 money NULL ,状态 char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGOCREATE TABLE dbo.设备使用记录 (使用人员编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,出借经手人编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,归还经手人编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,出借时间 datetime NULL ,归还时间 datetime NULL ,设备编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,出借经手人姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,归还经手人姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,使用人员姓名 char (10) COLLATE Chinese_PRC_CI_AS NULL ,设备名称 char (10) COLLATE Chinese_PRC_CI_AS NULL ,记录存档编号 nchar (20) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON PRIMARYGOCREATE TABLE dbo.设备存放 (设备编号 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,设备名称 char (10) COLLATE Chinese_PRC_CI_AS NULL ,设备状态 char (10) COLLATE Chinese_PRC_CI_AS NULL ) ON PRIMARYGO5.2约束条件以及外键约束:约束:ALTER TABLE dbo.使用人员 ADD CONSTRAINT PK_使用人员 PRIMARY KEY CLUSTERED (编号) ON PRIMARY ,CONSTRAINT CK_使用人员 CHECK (性别 = 女 or 性别 = 男)GOALTER TABLE dbo.值班表 ADD CONSTRAINT PK_值班表 PRIMARY KEY CLUSTERED (值班时间) ON PRIMARY GOALTER TABLE dbo.出借 ADD CONSTRAINT PK_出借 PRIMARY KEY CLUSTERED (使用者编号,设备编号) ON PRIMARY GOALTER TABLE dbo.归还 ADD CONSTRAINT PK_归还 PRIMARY KEY CLUSTERED (归还时间,使用者编号,设备编号) ON PRIMARY GOALTER TABLE dbo.损耗费用 ADD CONSTRAINT PK_损耗费用 PRIMARY KEY CLUSTERED (使用者编号,设备编号) ON PRIMARY GOALTER TABLE dbo.管理人员 ADD CONSTRAINT PK_管理人员 PRIMARY KEY CLUSTERED (管理员编号) ON PRIMARY ,CONSTRAINT CK_管理人员 CHECK (年龄 0),CONSTRAINT CK_管理人员_1 CHECK (性别 = 女 or 性别 = 男)GOALTER TABLE dbo.设备 ADD CONSTRAINT PK_设备 PRIMARY KEY CLUSTERED (设备编号) ON PRIMARY ,CONSTRAINT CK_设备 CHECK (价值 0),CONSTRAINT CK_设备_1 CHECK (状态 = 不可用 or 状态 = 可用)GOALTER TABLE dbo.设备使用记录 ADD CONSTRAINT PK_设备使用记录 PRIMARY KEY CLUSTERED (记录存档编号) ON PRIMARY GOALTER TABLE dbo.设备存放 ADD CONSTRAINT PK_设备存放 PRIMARY KEY CLUSTERED (设备编号) ON PRIMARY ,CONSTRAINT CK_设备存放 CHECK (设备状态 = 不可用 or 设备状态 = 可用)GO外键约束:ALTER TABLE dbo.值班表 ADD CONSTRAINT FK_值班表_管理人员1 FOREIGN KEY (管理人员编号) REFERENCES dbo.管理人员 (管理员编号)GOALTER TABLE dbo.出借 ADD CONSTRAINT FK_出借_管理人员1 FOREIGN KEY (管理员编号) REFERENCES dbo.管理人员 (管理员编号)GOALTER TABLE dbo.归还 ADD CONSTRAINT FK_归还_管理人员 FOREIGN KEY (管理员编号) REFERENCES dbo.管理人员 (管理员编号),CONSTRAINT FK_归还_使用人员 FOREIGN KEY (使用者编号) REFERENCES dbo.使用人员 (编号)GOALTER TABLE dbo.损耗费用 ADD CONSTRAINT FK_损耗费用_设备 FOREIGN KEY (设备编号) REFERENCES dbo.设备 (设备编号),CONSTRAINT FK_损耗费用_使用人员 FOREIGN KEY (使用者编号) REFERENCES dbo.使用人员 (编号)GOALTER TABLE dbo.设备使用记录 ADD CONSTRAINT FK_设备使用记录_管理人员 FOREIGN KEY (出借经手人编号) REFERENCES dbo.管理人员 (管理员编号),CONSTRAINT FK_设备使用记录_管理人员1 FOREIGN KEY (归还经手人编号) REFERENCES dbo.管理人员 (管理员编号),CONSTRAINT FK_设备使用记录_设备1 FOREIGN KEY (设备编号) REFERENCES dbo.设备 (设备编号),CONSTRAINT FK_设备使用记录_使用人员1 FOREIGN KEY (使用人员编号) REFERENCES dbo.使用人员 (编号)GO5.3建立视图如下:SET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS ON GOCREATE VIEW dbo.VIEW1ASSELECT dbo.设备使用记录.使用人员姓名 AS 姓名, dbo.设备使用记录.设备编号, dbo.设备使用记录.出借时间, dbo.设备使用记录.归还时间FROM dbo.设备使用记录 INNER JOIN dbo.设备使用记录 设备使用记录_1 ON dbo.设备使用记录.记录存档编号 = 设备使用记录_1.记录存档编号 INNER JOIN dbo.使用人员 ON dbo.设备使用记录.使用人员编号 = dbo.使用人员.编号 AND 设备使用记录_1.使用人员编号 = dbo.使用人员.编号GOSET QUOTED_IDENTIFIER OFF GOSET ANSI_NULLS ON GOSET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS ON GOCREATE VIEW dbo.VIEW2ASSELECT dbo.出借.使用者编号, dbo.出借.设备编号, dbo.出借.出借时间, dbo.管理人员.姓名FROM dbo.出借 INNER JOIN dbo.管理人员 ON dbo.出借.管理员编号 = dbo.管理人员.管理员编号 INNER JOIN dbo.归还 ON dbo.管理人员.管理员编号 = dbo.归还.管理员编号 INNER JOIN dbo.设备 ON dbo.出借.设备编号 = dbo.设备.设备编号 INNER JOIN dbo.设备存放 ON dbo.出借.设备编号 = dbo.设备存放.设备编号 INNER JOIN dbo.设备使用记录 ON dbo.管理人员.管理员编号 = dbo.设备使用记录.出借经手人编号 AND dbo.管理人员.管理员编号 = dbo.设备使用记录.归还经手人编号 AND dbo.设备.设备编号 = dbo.设备使用记录.设备编号 INNER JOIN dbo.使用人员 ON dbo.归还.使用者编号 = dbo.使用人员.编号 AND dbo.设备使用记录.使用人员编号 = dbo.使用人员.编号 INNER JOIN dbo.损耗费用 ON dbo.设备.设备编号 = dbo.损耗费用.设备编号 AND dbo.使用人员.编号 = dbo.损耗费用.使用者编号 INNER JOIN dbo.值班表 ON dbo.管理人员.管理员编号 = dbo.值班表.管理人员编号GOSET QUOTED_IDENTIFIER OFF GOSET ANSI_NULLS ON GO5.4建立存储过程如下存储过程一:设备外借时,设备存放自动减少SET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS OFF GOCREATE PROCEDURE LendOut userID char(10),MachineID char(10),AdmID char(10) ASif MachineID in (select 设备编号 from 设备存放 where 设备状态=可用) begindeclare UserName char(10),Dept nchar(20),AdmName char(10),MachineName char(10) set UserName=(select 姓名 from 使用人员 where 编号=userID)set Dept=(select 所属部门 from 使用人员 where 编号=userID )set AdmName=(select 姓名 from 管理人员 where 管理员编号=AdmID )set MachineName=(select 名称 from 设备 where 设备编号=MachineID)insert into 出借(使用者编号,设备编号,使用者姓名,使用者所属部门编号,管理员编号,管理员姓名,出借时间,设备名称) values(userID,MachineID,UserName,Dept,AdmID,AdmName,CURRENT_TIMESTAMP,MachineName)delete from 设备存放 where 设备编号=MachineID endelsebeginprint存放室不存在该设备!endGOSET QUOTED_IDENTIFIER OFF GOSET ANSI_NULLS ON GO存储过程二:设备归还时,设备存储增加,设备外借减少SET QUOTED_IDENTIFIER ON GOSET ANSI_NULLS OFF GOCREATE PROCEDURE Return_Machine userID char(10),MachineID char(10),AdmID char(10) ASif MachineID in (select 设备编号 from 出借 )begindeclare UserName char(10),Dept nchar(20),AdmName char(10),OAdmID char(10),OAdmName char(10),MachineName char(10),OTime datetime set UserName=(select 姓名 from 使用人员 where 编号=userID)set Dept=(select 所属部门 from 使用人员 where 编号=userID )set AdmName=(select 姓名 from 管理人员 where 管理员编号=AdmID )set MachineName=(select 名称 from 设备 where 设备编号=MachineID)set OTime=(select 出借时间 from 出借 where 设备编号=MachineID)set OAdmID=(select 管理员编号 from 出借 where 设备编号=MachineID)set OAdmName=(select 管理员姓名 from 出借 where 设备编号=MachineID)insert into 设备使用记录(使用人员编号,出借经手人编号,归还经手人编号,出借时间,归还时间,设备编号,出借经手人姓名,归还经手人姓名,使用人员姓名,设备名称,记录存档编号)values(userID,OAdmID,AdmID,OTime,CURRENT_TIMESTAMP,MachineID,OAdmName,AdmName,UserName,MachineName,current_timestamp)delete from 出借 where 设备编号=MachineIDinsert into 归还(使用者编号,设备编号,使用者姓名,使用者所属部门,管理员编号,管理员姓名,归还时间,设备名称) values(userID,MachineID,User

温馨提示

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

评论

0/150

提交评论