收藏 分享(赏)

作业--1--2.doc

上传人:pw17869 文档编号:5837056 上传时间:2019-03-19 格式:DOC 页数:13 大小:608KB
下载 相关 举报
作业--1--2.doc_第1页
第1页 / 共13页
作业--1--2.doc_第2页
第2页 / 共13页
作业--1--2.doc_第3页
第3页 / 共13页
作业--1--2.doc_第4页
第4页 / 共13页
作业--1--2.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、数据库原理与应用综合设计任务书前言数据库原理与应用课程的重点知识模块包括:1)数据库设计、2)用 SQL 实现建库、建表、查询、更新、和创建视图、3)存储过程和触发器设计。针对这三个应用能力,用一个案例作为背景,布置三次大作业。在校大学生都能理解“图书管理系统”的应用场合和业务流程。因此,以图书管理系统作为案例来布置作业,可以降低业务分析难度,让学生将主要精力放在知识消化与技术应用上。本文档包括四个部分。第一部分描述系统的需求,第二部分提出 E-R 模型设计和关系模型设计的任务;第三部分提出在 SQL Server 中,用 SQL 语句来建库、建表、查询、更新数据、创建视图的任务;第四部分,根

2、据应用需求、安全需求和数据完整性要求,提出设计存储过程和触发器的任务。每个任务之前,都给出了完成任务所需要掌握的关键知识点,学生可以在对这些知识点进行复习的基础上完成任务,每个任务是一次大作业。第一部分 案例的需求描述本部分描述“图书管理系统”的需求,学生通过阅读本部分内容,了解系统的功能要求、运行环境,对系统所需的数据有总体认识,作为三次作业的基础。1.1 需求故事洁是图书阅览室的管理员,她找到程序开发小组 “枫” ,请他们帮助开发一套管理程序。他们围坐在一起,开始以下对话:洁:你们进来都看到了,那几排大柜子,全都放满了书,很多教师来借书,管理起来越来越难,希望帮我开发一个管理软件。枫:你希

3、望软件提供哪些功能。洁:首先是能登记和查看图书信息,借书和还书的时候要方便操作。对于我来说,看图书的状态很重要,就是说要知道哪些图书已经借出去了,哪些书已经过了借阅期,此外还要做一些统计表大概就是这些吧。枫:你怎么登记借书呢?规定的借阅期有多长?过了借阅期怎么办?洁:每个老师都有一个工号,我就计工号和图书的 ISBN 号,一个人最多能借 2 本书。不同类型的书借阅期限是不一样的,比如文学作品的借阅期规定是 15 天,教学参考书的借阅期限是半年。有的人不自觉,过期好久都不还,我现在是翻记录本一个个地找,然后打电话到他的部门,并且发催还邮件。枫:同一 ISBN 只有一本书吗?洁:是的,现在把书分成

4、这样几类:教学参考书、文学作品、学术期刊、学术专著。枫:你想统计一些什么数据洁:主要是分类统计图书册数和价值、图书借阅次数。我们想知道哪些图书最受欢迎。枫:阅览室是你一个人在管么?洁:阅览室有两个人。我们俩都有一台计算机,最好两台计算机都可以用上这个软件。 1.2 需求分析1)功能需求教师信息管理图书信息管理借书登记还书登记管理员催还图 1-1:功能需求示意图教师信息管理:用于教师基本资料的增删改查。图书信息管理:用于图书基本信息的增删改查,分类统计图书册数和价值。借书登记:记录借书时间、所借图书、借书人、办理人。还书登记:记录还书时间、所还图书、还书人、办理人。催还:查询借阅逾期的借书信息,

5、给借书人发电子邮件,给借书人的部门打电话。2)运行环境要求L A NP C P CD B M S图 1-2:运行环境拓扑图系统采用 C/S 模式,有两台 PC 和一台服务器,联成一个局域网。PC 上安装图书管理软件的客户端,服务器上安装 DBMS,服务器也可由两台 PC 中的一台来代替。第二部分 作业 1E-R 模型与关系模型设计(满分 8 分)本部分的任务是:在需求分析的基础上,进行 E-R 图设计,然后将 E-R 模型转换为关系模型。任务:1) 根据需求描述,绘制 E-R 图。2) 将 E-R 图转换成关系模型,写出所有的关系模式,并写出每一个关系是按照什么规则转换而成的。3) 在已经形成

6、的关系模型下,举例说明连接运算、投影运算、选择运算。参考答案:(属性写在了实体和联系图形内)任务:1) 根据需求描述,分别为“图书管理系统”的不同功能模块绘制局部 E-R 图。教师信息管理:教师(教师工号,姓名,性别,电话,Email)N 1属于部门(部门名,电话)图书基本信息管理:图书(ISBN,书名,作者,出版社,出版时间,单价,状态) 归类类型(类型名,借阅期限)N 1借还书登记:pM图书 借/还(借日期,还日期) )教师管理员(管理员名,口令)N催还书登记:pM图书 催/还(催还日期) )教师管理员(用户名,口令)N2) 整体 E-R 图1PPMM1图书(ISBN,书名,作者,出版社,

7、出版时间,单价,状态)教师(教师工号,姓名,性别,电话,Email)催/还(催还日期)类型(类型名,借阅期限)归类部门(部门名,电话)属于1*N借/还(借日期,还日期) 管理员(管理员名,口令)NNN3) 关系模式 类型表(类型名,借阅期限 ),依据:实体转换为关系。 图书表(ISBN,书名,作者,出版社,出版时间,单价,类型名,状态) ,依据:实体转换为关系,1:N 的联系合并到 N,在 N 方增加一个外键: 类型名。注:状态属性为(库存,借出) 管理员表(管理员名,性别,口令 ) ,依据:实体转换为关系。 教师表(教师工号,姓名 ,性别,Email,部门名) , 依据:实体转换为关系,1:

8、N 的联系合并到 N,在 N 方增加一个外键: 部门名。 部门表(部门名,电话),依据:实体转换为关系。 借还表(借还业务编号, ISBN,教师工号,借办理人,借出日期,还办理人,归还日期) ,依据,M:N 联系转换为一个关系,取联系的实体的键加联系属性作为其属性,可以增加一个列作为主键。 催还表(催还业务编号, ISBN,教师工号,办理人,催还日期) ,依据,M:N 联系转换为一个关系,取联系的实体的键加联系属性作为其属性,可以增加一个列作为主键。4) 在已经形成的关系模型下,举例说明连接运算、投影运算、选择运算。连接运算:查看类型的图书已经超过了有效借出期限。 (需要图书,类型,借还关系)

9、投影运算:查看图书的书名、作者。选择运算:查看单价高于 50 元的图书。附:自底向上设计概念结构的方法通常分为两步:第一步:首先要根据需求分析的结果(数据流图、数据字典等)对现实世界的数据进行抽象,设计各个局部视图即分 E-R 图。 第二步:集成局部视图。设计分 E-R 图的步骤是:选择局部应用在需求分析阶段,通过对应用环境和要求进行详尽的调查分析,逐一设计分 E-R 图,实体的属性、标识实体的码实际上实体与属性是相对而言的,很难有截然划分的界限。同一事物,在一种应用环境中作为“属性“ ,在另一种应用环境中就必须作为“ 实体“。一般说来,在给定的应用环境中:属性不能再具有需要描述的性质。即属性

10、必须是不可分的数据项。合并分 E-R 图,生成初步 E-R 图。各分 E-R 图之间的冲突主要有三类:属性冲突、命名冲突和结构冲突。 。解决方法是根据应用的语义对实体联系的类型进行综合或调整。修改与重构,生成基本 E-R 图分 E-R 图经过合并生成的是初步 E-R 图。之所以称其为初步 E-R图,是因为其中可能存在冗余的数据和冗余的实体间联系,即存在可由基本数据导出的数据和可由其他联系导出的联系。冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难,因此得到初步 E-R 图后,还应当进一步检查 E-R 图中是否存在冗余,如果存在,应设法予以消除。Comment lxl1: CREA

11、TE TABLE 管理员表(管理员名 nchar(10) NOT NULL,性别 Char(2) not null DEFAULT 男 ,口令 nchar(20) NOT NULL,CONSTRAINT PK_管理员PRIMARY KEY CLUSTERED (管理员名 ASC) ON PRIMARYgoCREATE TABLE 类型表(类型名 nchar(10) NOT NULL,借阅期限 tinyint NOT NULL,CONSTRAINT PK_类型PRIMARY KEY CLUSTERED (类型名 ASC) ON PRIMARYgoCREATE TABLE 图书表(ISBN cha

12、r(20) NOT NULL,书名 nchar(20) NOT NULL,作者 nchar(20) NOT NULL,出版社 nchar(20)NOT NULL ,出版时间 datetime NOT NULL ,单价 money NOT NULL,类型名 nchar(10) NOT NULL,状态 nchar(2) NOT NULL CHECK(状态 in(库存,借出),CONSTRAINT PK_图书PRIMARY KEY CLUSTERED (ISBN ASC),CONSTRAINT FK_图书_类型FOREIGN KEY(类型名)REFERENCES 类型表(类型名)ON UPDATE

13、CASCADEON DELETE CASCADE) ON PRIMARY-=goCREATE TABLE 部门表(部门名 nchar(10) NOT NULL,电话 char(11) ,CONSTRAINT PK_部门表PRIMARY KEY CLUSTERED (部门名 ASC) ON PRIMARYgoCREATE TABLE 教师表(工号 char(4) NOT NULL,姓名 nchar(4) NOT NULL,性别 Char(2) not null DEFAULT 男 ,Email char(30) NOT NULL,部门名 nchar(10) NOT NULL,CONSTRAINT

14、 PK_教师表PRIMARY KEY CLUSTERED (工号 ASC),CONSTRAINT FK_部门表_教师表 FOREIGN KEY(部门名)REFERENCES 部门表(部门名)ON UPDATE CASCADEON DELETE CASCADE,) ON PRIMARYgoCREATE TABLE 借还记录表(业务编号 int identity(0,1) NOT NULL ,ISBN char(20) NOT NULL,工号 char(4) NOT NULL,代办理人 char(10) NOT NULL,借出日期 datetime NOT NULL,还办理人 char(10) N

15、ULL,归还日期 datetime NULL,CONSTRAINT PK_借还记录表PRIMARY KEY CLUSTERED (业务编号 ASC),CONSTRAINT FK_借还记录表_教师表 FOREIGN KEY(工号)REFERENCES 教师表(工号)ON UPDATE CASCADEON DELETE CASCADE,CONSTRAINT FK_借还记录表_借还记录表 FOREIGN KEY(ISBN) REFERENCES 图书表(ISBN)ON UPDATE CASCADEON DELETE CASCADE) ON PRIMARYGO-CREATE TABLE 催还记录表(业

16、务编号 int identity(0,1) NOT NULL,ISBN char(20) NOT NULL,工号 char(4) NOT NULL,办理人 char(10) NOT NULL,催还日期 datetime ,CONSTRAINT PK_催还记录表PRIMARY KEY CLUSTERED(业务编号 ASC),CONSTRAINT FK_催还记录表_教师表 FOREIGN KEY(工号) REFERENCES 教师表(工号)ON UPDATE CASCADEON DELETE CASCADE,CONSTRAINT FK_催还记录表_图书 FOREIGN KEY(ISBN) REFE

17、RENCES 图书表(ISBN)ON UPDATE CASCADEON DELETE CASCADE) ON PRIMARY-goINSERT INTO 类型表(类型名,借阅期限) VALUES(计算机,150)INSERT INTO 类型表(类型名,借阅期限)VALUES (文学,180)INSERT INTO 类型表(类型名,借阅期限)VALUES (经济,30 )-delete 类型表-select * from 类型表goINSERT INTO 部门表(部门名,电话) VALUES(网络系,020-8188483)INSERT INTO 部门表(部门名,电话) VALUES(外语系,0

18、20-8188482)INSERT INTO 部门表(部门名,电话) VALUES(管理系,020-8188481)-select * from 部门表goINSERT INTO 教师表(工号,姓名,性别,Email ,部门名) VALUES(J001,张三, 女,,网络系)INSERT INTO 教师表(工号,姓名,性别,Email ,部门名)VALUES(J002,李四, 男,LS,网络系)INSERT INTO 教师表(工号,姓名,性别,Email ,部门名)VALUES(J003,王五, 男,,外语系)-select * from 教师表goINSERT INTO 图书表(ISBN,书

19、名,作者,出版社,出版时间,单价,类型名 ,状态) VALUES(9789302218661,C#,江红 ,清华大学出版社,2012.2.10, 45,计算机,库存)INSERT INTO 图书表(ISBN,书名,作者,出版社,出版时间,单价,类型名 ,状态) VALUES(9787802229761,人生博弈密码 ,吕叔春, 中国华侨出版社,2009.2.1,36.8,文学 ,库存)INSERT INTO 图书表(ISBN,书名,作者,出版社,出版时间,单价,类型名 ,状态) VALUES(9787301150894,经济学原理 ,梁小民, 北京大学出版社 ,2009.4.1,54,经济,借

20、出)-select * from 图书表goINSERT INTO 管理员表(管理员名,性别,口令) VALUES(吴管,男,wg001)INSERT INTO 管理员表(管理员名,性别,口令) VALUES(李管,女,Lg002)INSERT INTO 管理员表(管理员名,性别,口令) VALUES(徐管,男,Xg003)-select * from 管理员表go-select * from 教师表-select * from 部门表-select * from 类型表-select * from 图书表-select * from 管理员表6.某教师今天借了某书,涉及两个操作,一是图书表的

21、状态改为“借出”,二是增加一个借还表记录语句:insert 借还记录表( ISBN ,工号,代办理人 ,借出日期,还办理人,归还日期 ) values(9787802229761,J001,wg001,2012.3.20,Lg002,)insert 借还记录表( ISBN ,工号,代办理人 ,借出日期,还办理人,归还日期 ) values(9787301150894,J001,wg001,2011.3.20,Lg002,)-select * from 借还记录表-delete 借还记录表goupdate 图书表set 状态=借出where ISBN=9787802229761-select *

22、 from 图书表7.将某书的单价改为元。语句:update 图书表set 单价=32where ISBN=9787802229761select * from 图书表4) 写出创建以下视图的 SQL语句1.查询某教师的借还书记录语句:-select * from 教师表-select * from 部门表-select * from 类型表-select * from 图书表-select * from 管理员表-select * from 借还记录表GOcreate view 教师借书视图asselect a.工号,姓名, 部门名,书名from 教师表 a,图书表 b,借还记录表 cwhe

23、re a.工号=c. 工号 and b.ISBN=c.ISBN and a.工号=J001-SELECT *FROM 教师借书视图2.查询某本书的流转记录语句:-select * from 借还记录表select a.工号,姓名, 部门名,书名,借出日期 ,归还日期from 教师表 a,图书表 b,借还记录表 cwhere a.工号=c. 工号 and b.ISBN=c.ISBN 3.借出但未归还的图书视图语句:-select * from 借还记录表-select * from 图书表select * from 图书表where 状态= 借出4.借阅逾期视图语句:-select * from

24、 图书表-select * from 借还记录表-select * from 类型表goCreate View 借阅逾期视图AsSELECT a.ISBN, a.书名, b.工号, b.借出日期FROM 图书表 a JOIN 借还记录表 b ON a.ISBN=b.ISBN JOIN 类型表 C ON a.类型名 =c. 类型名WHERE a.状态=借出 and c.类型名=a. 类型名 and a.ISBN=b.ISBN and datediff(day, b.借出日期,getdate()c. 借阅期限-select * from 借阅逾期视图go-select datediff(day,

25、2012-02-10 00:00:00.000,getdate()5.图书分类统计各类图书册数和各类图书总价值的视图语句:-select * from 图书表Create View 图书统计视图AsSELECT 类型名, count(*) 各类图书册数, sum(单价) 各类图书总价FROM 图书表GROUP By 类型名-select * from 图书统计视图Comment lxl2: A 马克思主义、列宁主义、毛泽东思想、邓小平理论B 哲学、宗教C 社会科学总论D 政治、法律E 军事F 经济G 文化科学、教育、体育H 语言、文字I 文学J 艺术K 历史、地理N 自然科学总论O 数理科学和

26、化学P 天文学、地球科学Q 生物科学R 医药、卫生S 农业科学T 工业技术U 交通运输V 航空、航天X 环境科学、安全科学Z 综合性图书第三部分 作业 2用 SQL语句建库、查询、更新数据、创建视图(满分 9分)本部分的任务是:在关系模型的基础上,结合 SQL Server 2005的技术特点,设计出数据库的逻辑结构,然后在 SQL Server 2005中用 SQL语句创建数据库、数据表、并输入一些原始数据,写 SQL语句,进行数据增删改,创建视图。任务:1) 在第一次大作业的参考答案基础上,将每个关系转换为 SQL Server支持的表结构,写出表结构。2) 使用 SQL语句,创建数据库,

27、数据库名为 BookStore,3) 使用 SQL语句,在数据库中创建表,设定表的主键约束、外键约束、检查约束、非空约束。4) 写以下增删改查操作的 SQL语句1、 增加三条类型表数据2、 增加三条教师表数据3、 增加五条图书表数据4、 某教师今天借了某书,涉及两个操作,一是图书表的状态改为“借出” ,二是增加一个借还表记录5、 将某书的单价改为 32元。5) 写出创建以下视图的 SQL语句1. 查询某教师的借还书记录2. 查询某本书的流转记录3. 借出但未归还的图书视图4. 借阅逾期视图5. 图书分类统计册数和总价值的视图参照完成:1) 表结构管理员表列名 类型 约束用户名 Char(10)

28、 pk性别 Char(2) NOT NULL,且默认为男口令 Nchar(20) NOT NULL类型表列名 类型 约束类型名 NChar(10) pk借阅期限 tinyint NOT NULL图书表列名 类型 约束ISBN Char(20) pk书名 Nchar(20) NOT NULL作者 Nchar(20) NOT NULL出版社 Nchar(20) NOT NULL出版时间 DateTime NOT NULL单价 money NOT NULL类型名 Nchar(10) FK references 类型表.图书类型状态 Nchar(2) 状态 in (库存,借出)部门表列名 类型 约束部

29、门名 NChar(10) pk电话 char(11) NOT NULL教师表列名 类型 约束工号 Char(4) pk姓名 Nchar(4) NOT NULL性别 Char(2) NOT NULL,且默认为男姓名 Nchar(4) NOT NULLEmail Char(30) NOT NULL部门名 Nchar(10) Fk references 部门表.部门名借还记录表列名 类型 约束业务编号 int Pk 自动标示ISBN char(20) Fk references 图书表.isbn工号 Char(4) Fk references 教师表.工号借办理人 Char(10) NOT NULL

30、借出日期 datetime NOT NULL还办理人 Char(10)归还日期 datetime催还记录表列名 类型 约束业务编号 int Pk 自动标示ISBN char(11) Fk references 图书表.isbn工号 Char(4) Fk references 教师表.工号办理人 Char(10) NOT NULL催还日期 datetime NOT NULL1) 使用 SQL 语句,创建数据库,数据库名为 BookStore,语句:Create Databse Bookstore2) 使用 SQL 语句,在数据库中创建表,设定表的主键约束、外键约束、检查约束、非空约束。语句:CR

31、EATE TABLE 管理员表(管理员名nchar(10) NOT NULL,性别Char(2) not null DEFAULT 男 ,口令nchar(20) NOT NULL,CONSTRAINT PK_管理员PRIMARY KEY CLUSTERED (管理员名 ASC) ON PRIMARYgoCREATE TABLE 类型表(类型名nchar(10) NOT NULL,借阅期限tinyint NOT NULL,CONSTRAINT PK_类型PRIMARY KEY CLUSTERED ( 类型名ASC) ON PRIMARYgoCREATE TABLE 图书表(ISBN char(2

32、0) NOT NULL,书名nchar(20) NOT NULL,作者nchar(20) NOT NULL,出版社nchar(20)NOT NULL ,出版时间datetime NOT NULL ,单价money NOT NULL,类型名nchar(10) NOT NULL,状态nchar(2) NOT NULL CHECK(状态in(库存,借出 ),CONSTRAINT PK_图书PRIMARY KEY CLUSTERED ( ISBN ASC),CONSTRAINT FK_图书_类型FOREIGN KEY(类型名)REFERENCES 类型表(类型名)ON UPDATE CASCADEON

33、 DELETE CASCADE) ON PRIMARY-=goCREATE TABLE 部门表(部门名nchar(10) NOT NULL,电话char(11) ,CONSTRAINT PK_部门表PRIMARY KEY CLUSTERED ( 部门名ASC) ON PRIMARYgoCREATE TABLE 教师表(工号char(4) NOT NULL,姓名nchar(4) NOT NULL,性别Char(2) not null DEFAULT 男 ,Email char(30) NOT NULL,部门名nchar(10) NOT NULL,CONSTRAINT PK_教师表PRIMARY

34、KEY CLUSTERED (工号ASC),CONSTRAINT FK_部门表_教师表FOREIGN KEY(部门名)REFERENCES 部门表(部门名)ON UPDATE CASCADEON DELETE CASCADE,) ON PRIMARYgoCREATE TABLE 借还记录表(业务编号int identity(0,1) NOT NULL ,ISBN char(20) NOT NULL,工号char(4) NOT NULL,代办理人char (10) NOT NULL,借出日期datetime NOT NULL,还办理人char (10) NULL,归还日期datetime NUL

35、L,CONSTRAINT PK_借还记录表PRIMARY KEY CLUSTERED (业务编号 ASC),CONSTRAINT FK_借还记录表_教师表FOREIGN KEY(工号)REFERENCES 教师表(工号)ON UPDATE CASCADEON DELETE CASCADE,CONSTRAINT FK_借还记录表_借还记录表FOREIGN KEY(ISBN) REFERENCES 图书表(ISBN)ON UPDATE CASCADEON DELETE CASCADE) ON PRIMARYGO-CREATE TABLE 催还记录表(业务编号int identity(0,1) NO

36、T NULL,ISBN char(20) NOT NULL,工号char(4) NOT NULL,办理人char (10) NOT NULL,催还日期datetime ,CONSTRAINT PK_催还记录表PRIMARY KEY CLUSTERED( 业务编号ASC),CONSTRAINT FK_催还记录表_教师表FOREIGN KEY(工号) REFERENCES 教师表(工号)ON UPDATE CASCADEON DELETE CASCADE,CONSTRAINT FK_催还记录表_图书FOREIGN KEY(ISBN) REFERENCES 图书表(ISBN)ON UPDATE CA

37、SCADEON DELETE CASCADE) ON PRIMARY3) 写以下增删改查操作的 SQL 语句1. 增加三条类型表数据语句:goINSERT INTO 类型表( 类型名, 借阅期限) VALUES(计算机, 150)INSERT INTO 类型表( 类型名, 借阅期限)VALUES(文学 ,180)INSERT INTO 类型表( 类型名, 借阅期限)VALUES(经济 ,30)-delete 类型表-select * from 类型表2. 增加三条部门表数据语句:goINSERT INTO 部门表( 部门名, 电话) VALUES(网络系,020-8188483)INSERT

38、INTO 部门表( 部门名, 电话) VALUES(外语系,020-8188482)INSERT INTO 部门表( 部门名, 电话) VALUES(管理系,020-8188481)-select * from 部门表3. 增加三条教师表数据语句:goINSERT INTO 教师表( 工号,姓名,性别,Email ,部门名) VALUES(J001,张三,女, ,网络系 )INSERT INTO 教师表( 工号,姓名,性别,Email ,部门名) VALUES(J002,李四,男,LS ,网络系 )INSERT INTO 教师表( 工号,姓名,性别,Email ,部门名) VALUES(J00

39、3,王五,男, ,外语系 )-select * from 教师表4. 增加五条图书表数据语句:goINSERT INTO 图书表( ISBN,书名 ,作者,出版社,出版时间,单价 ,类型名, 状态) VALUES(9789302218661,C#,江红 ,清华大学出版社 ,2012.2.10,45,计算机,库存)INSERT INTO 图书表( ISBN,书名 ,作者,出版社,出版时间,单价 ,类型名, 状态) VALUES(9787802229761,人生博弈密码,吕叔春 ,中国华侨出版社, 2009.2.1,36.8,文学,库存)INSERT INTO 图书表( ISBN,书名 ,作者,出

40、版社,出版时间,单价 ,类型名, 状态) VALUES(9787301150894,经济学原理, 梁小民 ,北京大学出版社, 2009.4.1,54,经济,借出)-select * from 图书表5. 增加三条管理员表数据语句:goINSERT INTO 管理员表( 管理员名,性别,口令) VALUES(吴管,男,wg001)INSERT INTO 管理员表( 管理员名,性别,口令) VALUES(李管,女,Lg002)INSERT INTO 管理员表( 管理员名,性别,口令) VALUES(徐管,男,Xg003)-select * from 管理员表go-select * from 教师表

41、-select * from 部门表-select * from 类型表-select * from 图书表-select * from 管理员表6. 某教师今天借了某书,涉及两个操作,一是图书表的状态改为“借出” ,二是增加一个借还表记录语句:insert 借还记录表(ISBN ,工号,代办理人,借出日期, 还办理人 ,归还日期) values(9787802229761,J001,wg001,2012.3.20,Lg002,)insert 借还记录表(ISBN ,工号,代办理人,借出日期, 还办理人 ,归还日期) values(9787301150894,J001,wg001,2011.3

42、.20,Lg002,)-select * from 借还记录表-delete 借还记录表goupdate 图书表set 状态=借出 where ISBN=9787802229761-select * from 图书表7. 将某书的单价改为 32 元。语句:update 图书表set 单价=32where ISBN=9787802229761select * from 图书表4) 写出创建以下视图的 SQL 语句1. 查询某教师的借还书记录语句:-select * from 教师表-select * from 部门表-select * from 类型表-select * from 图书表-sel

43、ect * from 管理员表-select * from 借还记录表GOcreate view 教师借书视图asselect a.工号,姓名,部门名, 书名from 教师表 a,图书表 b,借还记录表 cwhere a.工号=c.工号 and b.ISBN=c.ISBN and a.工号=J001-SELECT *FROM 教师借书视图2. 查询某本书的流转记录语句:-select * from 借还记录表select a.工号,姓名,部门名, 书名,借出日期,归还日期from 教师表 a,图书表 b,借还记录表 cwhere a.工号=c.工号 and b.ISBN=c.ISBN 3. 借

44、出但未归还的图书视图语句:-select * from 借还记录表-select * from 图书表select * from 图书表where 状态=借出4. 借阅逾期视图语句:-select * from 图书表-select * from 借还记录表-select * from 类型表goCreate View 借阅逾期视图AsSELECT a.ISBN, a.书名, b.工号, b.借出日期FROM 图书表 a JOIN 借还记录表 b ON a.ISBN=b.ISBN JOIN 类型表 C ON a.类型名 =c. 类型名WHERE a.状态=借出 and c.类型名=a.类型名 and a.ISBN=b.ISBN and datediff(day, b.借出日期,getdate()c.借阅期限-select * from 借阅逾期视图go-select datediff(day, 2012-02-10 00:00:00.000,getdate()5. 图书分类统计各类图书册数和各类图书总价值的视图语句:-select * from 图书表Create View 图书统计视图AsSELECT 类型名,count(*) 各类图书册数, sum(单价) 各类图书总价FROM 图书表GROUP By 类型名-select * from 图书统计视图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报